Üdv,
Egy comboBox-ot szeretnék feltölteni dinamikusan, ezeket nézegettem:
https://stackoverflow.com/questions/561166/binding-a-wpf-combobox-to-a-…
<ComboBox x:Name="comboBoxDepartment" HorizontalAlignment="Left" Margin="210,339,0,0" VerticalAlignment="Top" Width="276" ItemsSource="{Binding Path=lst}" DisplayMemberPath="departmentName" SelectedValuePath="Id" SelectedValue="{Binding Path=lst}"/>
Teszt kód:
List<Department> lst = new List<Department> { new Department { Id = 1, departmentName = "Első" } };
Üres a ComboBox. Mit csinálok rosszul?
Azt szeretném, hogy a kiválasztott elem (név alapján) a hozzátartozó Id-t kapjam meg.
- 199 megtekintés
Hozzászólások
Aki ennyiből megmondja elsőre annak fizetek egy sört! :)
Kérdés az (is), hogy a ComboBox miben van? pl Grid.Resources
Bevallom nincs kedvem újratanulni. (Örülök, hogy nem kell.) Ami nálad baj lehet, hogy a kötés (binding) egyirányú.
• Átállítható az adatkötés iránya
• OneWay: a forrása változtatja a célt
• OneWayToSource: a cél változtatja a forrást
• TwoWay: oda-vissza megtörténik a módosítás
• OneTime: a forrás inicializálja a célt, de a további változtatásoknak nincs hatása
• Default: a vezérlő tulajdonságának alapbeállítása (eltér) → legtöbb TwoWay
- A hozzászóláshoz be kell jelentkezni
public List<Department> lst { get; } = new List<Department> { new Department { Id = 1, departmentName = "Első" } };
EDIT: na jó, bővebben, bár tényleg nem sok az infó:
- Az lst property legyen ^^^^^^
- A Departmentben is property-k legyenek:
public class Department
{
public int Id { get; set; }
public string? departmentName { get; set; }
}
- DataContext legyen beállítva
- Ahova szeretnéd a kiválasztott ID-t bindolni, annak is legyen egy propertyje:
public int? slctd { get; set; }
- és akkor az xaml ennek megfelelően:
<ComboBox x:Name="comboBoxDepartment" HorizontalAlignment="Left" Margin="210,339,0,0" VerticalAlignment="Top" Width="276" ItemsSource="{Binding Path=lst}" DisplayMemberPath="departmentName" SelectedValuePath="Id" SelectedValue="{Binding Path=slctd}"/>
- A hozzászóláshoz be kell jelentkezni
Köszönöm. Lehagytam a class infót. :) De teljesen jó.
Működik, köszönöm!
- A hozzászóláshoz be kell jelentkezni
Nem csak a kötést kell lekezelni, hanem egy eseményt is, ami érzékeli bármely oldalon van változás a modellben. Emailben küldtem anyagot, abban benne van.
- A hozzászóláshoz be kell jelentkezni