Korzystając z metody Bind() w Asp.net, jak powiązać z samym obiektem, a nie z jego właściwościami?Powiąż z samym obiektem, nie jedną z jego właściwości.
Odpowiedz
Skończyłem pracować nad tym poprzez dodanie właściwości o nazwie SelfReference, która po prostu zwraca this
. Jeśli ktokolwiek to czyta i ma lepsze rozwiązanie, chciałbym to usłyszeć.
Nie jestem pewien, co dokładnie chcesz powiązać. W tej chwili jedyną rzeczą, która miałaby dla mnie sens, jest powiązanie z pewną kontrolą interfejsu użytkownika, na przykład kontrola DropDown.
Zwykle niektóre właściwości tekstu dla wyświetlanej wartości i właściwości wartości dla rzeczywistej wartości, która ma funkcjonować jako identyfikator. Z rozwijanej
- DataTextField
- DataValueField
Nie można określić DataTextField = "Firstname"
i DataValueField = "Id"
zważywszy, że masz obiekt, który ma właściwości "Imię" i "ID".
Na listach można użyć funkcji Eval
bezpośrednio na kodzie ASPX lub dodawania formantów po stronie serwera (tj literałów, etykiety) wewnątrz szablonów lista i wdrożyć zdarzenie ItemDataBound
(biorąc repeatera jako przykład). Here's dobry przykład, który ilustruje to dalej.
nadzieję, że był w stanie pomóc trochę;)
myślę co Ryan oznacza tutaj jak gdyby trzeba przedmiot podobny do tego
public class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
A jeśli wiążą Person
obiekt do dowolnego miejsca w GridView lub Repeater do dowolnego źródła danych, które wiążesz tylko osobę i otrzymuje domyślną wartość wiązania z jednej z jego właściwości. wsparcie mamy zmienną Ryan
z Person
typ tak chcę, aby uzyskać wartość zmiennej z wywołaniem <%# Eval("Ryan") %>
nie <%# Eval("Ryan.FirstName") %>
próbowałem umieścić atrybut DefaultBindingProperty dla danej klasy, ale to nie działa
[System.ComponentModel.DefaultBindingProperty("FirstName")]
public class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
tak nie czy ktoś wie, jak to zrobić właściwie?
Tak. Chcę związać obiekt, a nie jedną z jego właściwości. – Ryan
Wymyśliłem jakoś sposób. Właściwie to w „http://msdn.microsoft.com/en-us/library/ms752347.aspx”
ListBox ItemsSource="{**Binding**}" IsSynchronizedWithCurrentItem="true"/>
Należy zauważyć, że chociaż mamy podkreślił, że droga do wartości do wykorzystania jest jednym z czterech niezbędnych składników wiążącej, w scenariuszach, które chcesz związać się z całą obiekt, wartość do użycia będzie taka sama jak obiekt źródłowy wiążący. W takich przypadkach nie można określić ścieżki. Rozważmy następujący przykład:
XAML Kopiowanie
Można użyć Container.DataItem zamiast: Item='<%# Container.DataItem %>'
- 1. Powiąż obiekt z aplikacją App.xaml.cs
- 2. WPF: Powiąż DisplayMemberPath w combobox z pozycją
- 3. Powiąż kolekcję z StackPanel
- 4. Powiąż wątki z procesorami
- 5. Powiąż z coffeespptem
- 6. Powiąż właściwość, która znajduje się poza obiektem Itemscontrol w XAML
- 7. C# Rzucanie wartości Foreach do jednej z jego właściwości
- 8. iomanip z obiektem klasy
- 9. Powiąż obiekt ObservableCollection z ListView
- 10. Powiąż Nullable DateTime z MaskedTextBox
- 11. Powiąż datepicker datepicker z knockoutjs
- 12. Powiąż macierzysty datacontext (z zasobów pozycji)
- 13. Powiąż zmienne z funkcją zwrotną
- 14. Powiąż z rozmiarem elementu (div)
- 15. Powiąż użytkownika Ldap z grupą z Javą
- 16. PUT z obiektem zagnieżdżonym
- 17. Co jest nie tak z obiektem DateTime
- 18. Powiąż dużą liczbę danych z comboboxem?
- 19. Python: ustal, czy wszystkie elementy listy są tym samym obiektem.
- 20. Powiąż dane z formularzem systemu Windows TabControl
- 21. Przesyłanie pliku sprężyn nie wiąże się z obiektem atrybutu modelu
- 22. Czy mogę połączyć wiele obiektów z różnymi znacznikami z tym samym obiektem IBO?
- 23. Prostokąt z tylko jedną ramką
- 24. Zastosuj jedną animację do wielu widoków w tym samym czasie
- 25. Problemy z javascript w trybie javascript z obiektem object.defineProperty
- 26. Powiąż dowolny dokument XML z WPF TreeView
- 27. Powiąż metodę ASP.NET DropDownList DataTextField z metodą?
- 28. Powiąż nazwę domeny z katalogiem w Apache
- 29. Powiąż wiele zdarzeń z metodą "żywych" jQuery
- 30. Lista Jackson JSON z obiektem typu
Proszę określić jaśniej, co dokładnie chcesz związać. Do kontroli listy ...? – Juri
Łączę się z obiektem w formancie FromView. Wewnątrz FormView mam UserControl, który definiuje właściwość, która jest typu związanego. Na przykład wyobraź sobie klasę o nazwie Nazwa, która definiuje dwie właściwości: Imię i Nazwisko. Instancja klasy Name jest powiązana z FormView. Nie chcę przekazać FirstName lub LastName do mojego UserControl przez wywołanie Bind ("FirstName") i Bind ("LastName"), chcę przekazać instancję Name do mojego UserControl. – Ryan