Jedną z rzeczy, które lubię robić, jest stworzenie warstwy "prezentacji" dla formularza. Na tej warstwie deklaruję właściwości, które są związane z kontrolkami w formularzu. W tym przypadku formantem jest pole tekstowe.
W tym przykładzie mam formularz z pola tekstowego, aby wyświetlić adres IP
Teraz utworzyć źródło wiążące dzięki właściwości tekstowym. Wybierz DataBindings-> Text. Kliknij strzałkę w dół; wybierz "Dodaj źródło danych projektu".
ten rozpoczyna się, że kreatora źródła danych. Wybierz obiekt. Hit "Dalej".
teraz wybrać klasę, która ma tę właściwość, że będzie ograniczony do pola tekstowego. W tym przykładzie wybrałem PNetworkOptions. Wybierz Zakończ, aby zakończyć działanie kreatora. Źródło BindingSource nie zostanie utworzone.
Następnym krokiem jest wybranie rzeczywistą właściwość związaną z klasą. Z DataBindings-> Text wybierz downarrow i wybierz nazwę właściwości, która będzie związana z polem tekstowym.
w klasie, która ma swoją nieruchomość, INotifyPropertyChanged koniecznością wdrożone do komunikacji 2-way na polu
public class PNetworkOptions : IBaseInterface, INotifyPropertyChanged
{
private string _IPAddress;
private void NotifyPropertyChanged(String info)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(info));
}
}
public string IPAddress
{
get { return _IPAddress; }
set
{
if (value != null && value != _IPAddress)
{
_IPAddress = value;
NotifyPropertyChanged("IPAddress");
}
}
}
}
adres IP w konstruktorze formy, musimy wyraźnie określić wiążącego
Binding IPAddressbinding = mskTxtIPAddress.DataBindings.Add("Text", _NetOptions, "IPAddress",true,DataSourceUpdateMode.OnPropertyChanged);
czy to jest WinForm? – Natrium
Wywodzi się z klasy Form. – rahul