您的位置:首页 > 其它

MVVM WPF 使用 datagrid 绑定 comboBox

2017-09-30 16:52 573 查看
页面引用上下文

<Page x:Class="页面后台类名"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="335" d:DesignWidth="1105"
Title="标题名"
DataContext="{Binding 你VM的类名, Source={StaticResource Locator}}">


绑定方法
<DataGrid Margin="10"
AutoGenerateColumns="False"
DataContext="{Binding DataContent}"
ItemsSource="{Binding EmployeeEntity,Mode=TwoWay}"
SelectedItem="{Binding SelectedEmployee,Mode=TwoWay}" >
<DataGrid.Columns>
<DataGridTextColumn Header="姓名" Binding="{Binding Name}"/>
<DataGridTextColumn Header="性别" Binding="{Binding Sex}"/>
<DataGridTextColumn Header="所属酒店" Binding="{Binding HotelName}"/>
<DataGridTextColumn Header="所属部门" Binding="{Binding Department}"/>
<DataGridTextColumn Header="职务" Binding="{Binding Position}"/>
<DataGridTextColumn Header="入职日期" Binding="{Binding EntryDate}"/>
<DataGridTemplateColumn Header="联系电话" Width="150">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox ItemsSource="{Binding Phone}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="民族" Binding="{Binding Nationality}"/>
<DataGridTextColumn Header="生日" Binding="{Binding Birthday}"/>
<DataGridTextColumn Header="证件类型" Binding="{Binding CardType}"/>
<DataGridTextColumn Header="证件号码" Binding="{Binding CardNumber}"/>
<DataGridTextColumn Header="籍贯" Binding="{Binding Native}"/>
<DataGridTextColumn Header="户口所在地" Binding="{Binding ResidentCity}"/>
<DataGridTextColumn Header="常住地址" Binding="{Binding Address}"/>
<DataGridTextColumn Header="离职日期" Binding="{Binding LeaveDate}"/>
<DataGridTextColumn Header="备注" Binding="{Binding Remarks}" Width="*"/>
</DataGrid.Columns>
</DataGrid>


其中在DataGrid的ItemsSource指定了EF模型实例,SelectedItem指定了选中后选项的存储位置
接着在DataGrid.Columns中指定要绑定的数据模型列名,其中需要用到ComboBox时注意要用DataGridTemplateColumn模板列中增加ComboBox的方法来绑定,否则没数据
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: