0

나는 사용자 정의 컨트롤에 콤보 박스가 있고 데이터를 바인딩하고 싶지만 Visual Studio 2008 디자이너보기의 속성 메뉴에서 액세스 할 수있는 유일한 것들은 데이터 소스와 디스플레이 멤버입니다. 거기에 내가 너무 속성 메뉴에서 선택한 값 구성원을 편집 할 수 있도록 usercontrol을 설치하는 방법이 있습니까?UserControl의 ComboBox입니다. 데이터 바인딩을 설정

[System.ComponentModel.ComplexBindingProperties("DataSource", "DisplayMember")] 
public partial class CustomComboBox : UserControl 
{ 
    private object dataSource; 
    private string displayMember; 


    [AttributeProvider(typeof(IListSource))] 
    public object DataSource 
    { 
     get 
     { 
      return this.dataSource; 
     } 

     set 
     { 
      this.dataSource = value; 
     } 
    } 

    public String DisplayMember 
    { 
     get 
     { 
      return this.displayMember; 
     } 

     set 
     { 
      this.displayMember = value; 
     } 
    } 

    public CustomComboBox() 
    { 
     InitializeComponent(); 
    } 

    private void BindComboBox() 
    { 
     if (this.dataSource == null || this.displayMember == null) 
     { 
      return; 
     } 

     Binding binding = new Binding("DataSource", this.dataSource, this.displayMember, true); 
     Binding binding2 = new Binding("DisplayMember", this.dataSource, this.displayMember, true); 
     this.comboBox1.DataBindings.Clear(); 
     this.comboBox1.DataBindings.Add(binding); 
     this.comboBox1.DataBindings.Add(binding2); 
    } 
} 

답변

0

내가 편집하고 싶은 모든 필드에 대한 속성을 추가하고 모든 속성 위에 [Browsable (true)]를 추가했습니다. 이렇게하면 속성 메뉴에서 모든 것을 텍스트 필드로 편집 할 수 있습니다.

관련 문제