如何在网格单元格模板中的RadRibbonDropDownButton中绑定ListView
本文关键字:RadRibbonDropDownButton 绑定 ListView 网格 单元格 | 更新日期: 2023-09-27 18:01:53
我有一个rad网格视图,它将itemssource绑定到一个'Employee's列表。'Employee'实体有一个'Roles'属性列表。我如何将这个"角色"绑定到ListView
,如下所示。
为例:在第二列中,RadComboBox
正确结合。在第三列,RadRibbonDropDownButton
不能正常结合。我如何得到角色列表绑定到RadRibbonDropDownButton
内的ListView
?
请帮助。
class Employee
{
public string Name {get; set;}
public List<Role> RolesList {get; set;}
}
class Role
{
public int RoleId {get; set;}
public string RoleName {get; set;}
public string RoleCategory {get; set;}
}
<tk:RadGridView ItemsSource="{Binding Path=EmployeeList,Mode=TwoWay}" AutoGenerateColumns="False">
<tk:RadGridView.Columns>
<tk:GridViewDataColumn Header="Employee Name" DataMemberBinding="{Binding Name}" IsReadOnly="True"/>
<tk:GridViewDataColumn Header="Roles" Width="410">
<tk:GridViewDataColumn.CellTemplate>
<DataTemplate>
<!--this binds properly-->
<tk:RadComboBox ItemsSource="{Binding RolesList}" DisplayMemberPath="RoleName" SelectedValuePath="RoleId" />
</DataTemplate>
</tk:GridViewDataColumn.CellTemplate>
</tk:GridViewDataColumn>
<tk:GridViewDataColumn Header="Roles" Width="410">
<tk:GridViewDataColumn.CellTemplate>
<DataTemplate>
<tk:RadRibbonDropDownButton>
<tk:RadRibbonDropDownButton.DropDownContent>
<ListView ItemsSource="{Binding RolesList}">
<ListView.View>
<GridView AllowsColumnReorder="False">
<GridViewColumn DisplayMemberBinding="{Binding RoleName}" Header="Role Name" Width="75" ></GridViewColumn>
<GridViewColumn DisplayMemberBinding="{Binding RoleCategory}" Header="Role Category" Width="175" ></GridViewColumn>
</GridView>
</ListView.View>
</ListView>
</tk:RadRibbonDropDownButton.DropDownContent>
</tk:RadRibbonDropDownButton>
</DataTemplate>
</tk:GridViewDataColumn.CellTemplate>
</tk:GridViewDataColumn>
</tk:RadGridView.Columns>
</tk:RadGridView>
添加DataContext={Binding}修复了绑定问题