DataBinding met een struct

Status
Niet open voor verdere reacties.

HelpElec

Gebruiker
Lid geworden
6 mrt 2013
Berichten
102
Beste allemaal,

Ik gebruik WinForms en heb een usercontrol met 2 properties, waarvan 1 een struct is:

Code:
public UInt32 MAC_Address
        {
            get
            {
                return _MAC_Address;
            }
            set
            {
                _MAC_Address= value;
            }
        }
        public Product_Number_Contents Product_Number
        {
            get
            {
                return _Product_Number;
            }
            set
            {
                _Product_Number = value;
            }
        }

De struct:

Code:
 public struct Product_Number_Contents 
        {
            private Byte _Channel_Number;
            private Boolean _Master;

            public Byte Channel_Number 
            { 
                get 
                {
                    return _Channel_Number;
                } 
                set 
                {
                    _Channel_Number = value;
                } 
            }
            public Boolean Master             
            { 
                get
                {
                    return _Master;
                } 
                set
                {
                    _Master = value;
                }
            }
          
        }

Nu wil ik een Form openen waarop de Properties van de usercontrol aangepast moeten worden. Hiervoor wil ik Databinding gebruiken.

Code:
public FormUC(UC ThisUC)
        {
            InitializeComponent();
            DataBinding(ThisUC);
        }

DataBinding ziet er alsvolgt uit:

Code:
private void DataBinding(UC ThisUC)
        {
            this.DataBindings.DefaultDataSourceUpdateMode = DataSourceUpdateMode.OnPropertyChanged;

            BndSrcUC = new BindingSource();
            BndSrcUC .DataSource = typeof(UC);
            BndSrcUC .Add(ThisUC);

            BndSrcProduct = new BindingSource();
            BndSrcProduct .DataSource = typeof(UC.Product_Number_Contents);
            BndSrcProduct .Add(ThisUC.Product_Number);

            TxtbxMACAddress.DataBindings.Add("Text", BndSrcUC , "MAC_Address", true, DataSourceUpdateMode.OnPropertyChanged);

            TxtbxChannelNumber.DataBindings.Add("Text", BndSrcProduct, "Channel_Number", true, DataSourceUpdateMode.OnPropertyChanged);
            ChckbxMaster.DataBindings.Add("Checked", BndSrcProduct, "Master", true, DataSourceUpdateMode.OnPropertyChanged);

Op het Form krijgt TxtbxMACAddress wel de waarde van MAC_Address, maar TxtbxChannelNumber en ChckbxMaster niet de waardes van de members van Product_Number. Ook verandert Product_Number niet als ik wat op het Form verander. Vergeet ik iets of moet dit op een andere manier?

Bedankt!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan