3
내 프로젝트 중 하나에서 사용할 수 있도록 사용자 정의 접을 수있는 패널을 만들려고합니다. 어느 쪽이 무너질 수 있는지 표시하도록 설정하고 문자열 입력 {"None", "Up", "Right", "Down", "Left", "All"};
이 필요합니다.C# usercontrol 사용자 정의 속성에 대한 옵션 목록 설정
public partial class CollapsiblePanel : UserControl
{
# region Collapse Direction
List<string> DirectionOptions = new List<string> { "None", "Up", "Right", "Down", "Left", "All" };
[Browsable(true), DefaultValue("All"), Description("Direction panel collapses. 0-none, 1-up, 2-right, 3-down, 4-left, 5-all")]
[ListBindable(true), Editor(typeof(ComboBox), typeof(UITypeEditor))]
private string _direction = "All";
public List<string> Direction
{
get { return DirectionOptions; }
set
{
DirectionOptions = value;
callCollapseDirectionChanged();
}
}
public event Action CollapseDirectionChanged;
protected void callCollapseDirectionChanged()
{
Action handler = CollapseDirectionChanged;
DisplayButtons();
if (handler != null)
{
handler();
}
}
# endregion
public CollapsiblePanel()
{
InitializeComponent();
}
private void DisplayButtons()
{
switch (_direction)
{
case "None":
buttonDown.Visible = false;
buttonUp.Visible = false;
buttonRight.Visible = false;
buttonLeft.Visible = false;
break;
case "Up":
buttonDown.Visible = false;
buttonUp.Visible = true;
buttonRight.Visible = false;
buttonLeft.Visible = false;
break;
case "Right":
buttonDown.Visible = false;
buttonUp.Visible = false;
buttonRight.Visible = true;
buttonLeft.Visible = false;
break;
case "Down":
buttonDown.Visible = true;
buttonUp.Visible = false;
buttonRight.Visible = false;
buttonLeft.Visible = false;
break;
case "Left":
buttonDown.Visible = false;
buttonUp.Visible = false;
buttonRight.Visible = false;
buttonLeft.Visible = true;
break;
case "All":
buttonDown.Visible = true;
buttonUp.Visible = true;
buttonRight.Visible = true;
buttonLeft.Visible = true;
break;
}
}
}
누군가는 디자이너가 사용자에게 가능한 값으로 DirectionOptions
목록을 제공하는 얻는 방법을 나에게 설명 할 수 : 여기
는 지금까지이 무엇인가? 그들은 문자열 중 하나를 값으로 선택할 수 있습니다.
대단히 감사합니다. 이것은 바로 그 것이었다. – Chris