wpf DataGrid模板编辑

<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:col="clr-namespace:System.Collections;assembly=mscorlib"
>

<Grid>
<DataGrid AutoGenerateColumns="false" x:Name="grid" Width="100" Height="100" LoadingRow="grid_LoadingRow" FrozenColumnCount="2" Margin="26,10,391,209" >
<DataGrid.Columns>
<DataGridComboBoxColumn/>
<DataGridHyperlinkColumn Header="RoleID" Width="100" Binding="{Binding Path=RoleID}">

</DataGridHyperlinkColumn>
<DataGridTextColumn Header="RoleName" Width="100" Binding="{Binding Path=RoleName}">
<DataGridTextColumn.ElementStyle>
<Style TargetType="TextBlock">
<Setter Property="TextWrapping" Value="Wrap"></Setter>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridTextColumn Header="Description" Width="100" Binding="{Binding Path=Description}">
<DataGridTextColumn.ElementStyle>
<Style TargetType="TextBlock">
<Setter Property="TextWrapping" Value="Wrap"></Setter>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
<DataGridComboBoxColumn Header="RoleName" SelectedItemBinding="{ Binding Path=RoleName}">
<DataGridComboBoxColumn.ItemsSource>
<col:ArrayList>
<sys:String>a</sys:String>
<sys:String>b</sys:String>
<sys:String>c</sys:String>
</col:ArrayList>
</DataGridComboBoxColumn.ItemsSource>
</DataGridComboBoxColumn>

</DataGrid.Columns>
<DataGrid.RowDetailsTemplate>
<DataTemplate>
<Border Margin="5">
<TextBlock Text="{ Binding Path=Description}" TextWrapping="Wrap"></TextBlock>
</Border>
</DataTemplate>
</DataGrid.RowDetailsTemplate>
</DataGrid>
<DataGrid HorizontalAlignment="Left" Margin="195,86,0,0" Name="grid2" VerticalAlignment="Top" Height="190" Width="312">
<DataGrid.Columns>
<DataGridTemplateColumn Header="date">
<DataGridTemplateColumn.CellTemplate>

<DataTemplate>
<TextBlock Text="{Binding Path=DateTime}"></TextBlock>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<DatePicker SelectedDate="{Binding Path=DateTime,Mode=TwoWay}"></DatePicker>
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="DateTime">
<DataGridTextColumn.Binding>
<Binding Path="DateTime" StringFormat="{}{0:yyyy-MM-dd HH:mm:ss}">
<Binding.ValidationRules>

</Binding.ValidationRules>
</Binding>
</DataGridTextColumn.Binding>
</DataGridTextColumn>
</DataGrid.Columns>

</DataGrid>

</Grid>
</Window>

时间: 2024-10-11 10:48:30

wpf DataGrid模板编辑的相关文章

wpf DATAgrid模板中button 命令绑定以及命令参数绑定

场景:视频上传功能,上传列表使用DataGrid控件,视频有不同的状态对应不同的操作,DataGrid中最后一列为操作列,里面是Button控件.希望点击Button后执行对应的操作,但是设置Button的 Command="{Binding VideoOperationCommand}"后触发不了操作. XAML代码如下: [html] view plaincopy <DataGrid ItemsSource="{Binding VideoList}">

编写 WPF DataGrid 列模板,实现更好的用户体验

Julie Lerman 下载代码示例 最近我在为一个客户做一些 Windows Presentation Foundation (WPF) 方面的工作. 虽然我提倡使用第三方工具,但有时也会避免使用这些工具,这样做是为了体验那些坚持使用 Visual Studio 安装附带工具的开发人员会面临什么样的难题. 祝我好运吧!我们来研究一下 WPF DataGrid. 即便有 Web 搜索的帮助和来自在线论坛的建议,仍然有一些用户体验问题花了我几天时间才解决. 将 DataGrid 列分解为成对的互

WPF DataGrid 之数据绑定

1. Auto generation of columns 最简单的方法莫过于让DataGrid根据数据源中的字段自动生成列了: 根据实体类的公共属性, 能够自动生成四种类型的数据列,对应关系如下: TextBox columns for string values; CheckBox columns for boolean values; ComboBox columns for enumerable values; Hyperlink columns for Uri values; 拖个Da

WPF DataGrid常用属性记录

WPF DataGrid常用属性记录 组件常用方法: BeginEdit:使DataGrid进入编辑状态. CancelEdit:取消DataGrid的编辑状态. CollapseRowGroup:闭合DataGrid的行分组. CommitEdit:确认DataGrid的编辑完成. ExpandRowGroup:展开DataGrid的行分组. GetGroupFromItem:从具体Item中得到分组. ScrollIntoView:滚动DataGrid视图. 组件常用属性: Alternat

WPF DataGrid自定义样式

WPF DataGrid自定义样式 微软的WPF DataGrid中有很多的属性和样式,你可以调整,以寻找合适的(如果你是一名设计师).下面,找到我的小抄造型的网格.它不是100%全面,但它可以让你走得很远,有一些非常有用的技巧和陷阱. 在DataGrid中的最高水平,你可以改变的外观和感觉,通过设置一些: Property Type Values Default AlternatingRowBackground Brush Any Brush Null Background Brush Any

WPF datagrid 初学

<Window x:Class="WpfDemo.WinDataGrid" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:assembly="clr-namespace:System;assembly=mscorlib&quo

WPF Datagrid 控制 第一行和第一列之间的空白

原文:WPF Datagrid 控制 第一行和第一列之间的空白 这个位置就是 这里 我们更改 DataGridControltemplate 模板 看树形结构 里面是一个BUtton 功能是全选 能找到了 那就直接改掉就可以 <ControlTemplate x:Key="DataGridControlTemplate1" TargetType="{x:Type DataGrid}"> <Border BorderBrush="{Temp

WPF DataGrid 绑定数据及时更新的处理

原文:WPF DataGrid 绑定数据及时更新的处理 默认情况下datagrid 绑定数据源后,在界面编辑某一列后,数据不会及时更新到内存对象中.如在同一行上有一个命令对来获取 当前选中行(内存对象)发现,数据未更新过来. 解决办法: 在列的绑定属性里加上UpdateSourceTrigger,示例XAML如下 <DataGrid Name="dgProducts" IsReadOnly="False" CanUserAddRows="False&

wpf dataGrid 选中行 失去焦点时 的背景颜色的更改

关于 wpf dataGrid 选中行 失去焦点时 的背景颜色的更改.很简单的方式,在datagrid的resource中更改InactiveSelectionHighlightBrushKey属性的值即可. 关键代码如下: <DataGrid.Resources> <SolidColorBrush x:Key="{x:Static SystemColors.InactiveSelectionHighlightBrushKey}" Color="Yellow