逻辑代码:

namespace DataBingTest
    /// <summary>
    /// DB_DataGrid.xaml 的交互逻辑
    /// </summary>
    public partial class DB_DataGrid : Window
        public DB_DataGrid()
            InitializeComponent();
            List<Info> infoList = new List<Info>();
            Info info02 = new Info();
            info02.sIdx = "1";
            infoList.Add(info02);
            info02 = new Info();
            info02.sIdx = "2";
            infoList.Add(info02);
            info02 = new Info();
            info02.sIdx = "3";
            infoList.Add(info02);
            DG1.DataContext = infoList;
    public class Info
        public string sIdx { get; set; }
    public class OSList
        string[] txList = new string[] {"1" ,"2","3"};
        public string[] GetList()
            return this.txList;

1 微软教程:https://docs.microsoft.com/en-us/dotnet/api/system.windows.controls.datagridcomboboxcolumn?redirectedfrom=MSDN&view=netframework-4.7.2

https://blog.csdn.net/jiyanglin/article/details/83004460

尝试了一些教程,不好使。手写一个比较自由的示例:先上效果图:(不知道怎么多了一行,欢迎指教)xaml代码:&lt;Grid&gt; &lt;Grid.Resources&gt; &lt;!--Create list of enumeration values--&gt; &lt;ObjectDataProvider x:Key="strLi...
wpfDataGrid中,添加某一列的合计,并在最下方固定显示。本列子不使用ToolKit(有3.5和4.0的限制),添加一个类,重写DataGrid。可以在DataGrid上下左右绑定一个DataGrid,类似Footer属性。示例可直接运行,简单易懂。 (思路:两个DataGrid(mainDG,bottomDG),bottomDG的左右边binding 主表mainDG。并bottomDG绑定数据源(只有一行(合计的值)),),合计行的列宽可随着mainDG的改变而改变。
使用MVVM设计模式,但(出于性能原因)不使用经典WPF绑定 仅适用于数据虚拟化(不需要像其他WPF数据网格控件中那样进行UI虚拟化) 用于渲染的是WriteableBitmapEx库 快速滚动和渲染 类似于Excel的鼠标拖动选择 隐藏列/行 冻结的列/行 自己渲染,不使用WPF模板。 支持的对象-文本(带有-斜体,粗体属性),图像,图像按钮 FastWPFGrid用于DbMouse项目(http:/// ) 网格控件绑定到模型,该模型控制显示的数据。 以下是模型实现的示例。 using System ; using System . Collections . Generi Action<DataGrid, DelegateCommand<IList<object>>, string> bindData = (xamDataGrid, selectedRowsCommand, rowsPropertyName) => BindingOperations.SetBinding(xamDataGrid, DataGrid.ItemsSourceProperty, new Binding Source = ViewModel, Path = new PropertyPath(rowsPropertyName), Mode = BindingMode.OneWay // TODO : 全选命令未绑定到vm var contextMenu = (MenuItem)xamDataGrid.ContextMenu.Items[0]; contextMenu.Command = ApplicationCommands.SelectAll; contextMenu.Header = "全选"; var commandTrigger = (EventCommandTrigger)CommandSource.GetTriggers(xamDataGrid); BindingOperations.SetBinding(commandTrigger, EventCommandTrigger.CommandParameterProperty, new Binding Source = xamDataGrid.SelectedItems, commandTrigger.Command = selectedRowsCommand; commandTrigger.RoutedEvent = DataGrid.SelectionChangedEvent; commandTrigger.UpdateCommandParameter = true; const string SHARED_DATAGRID = "xgShared"; var viewModel = (MainViewModel)ViewModel; var xdgSystem = (DataGrid)Resources[SHARED_DATAGRID]; bindData(xdgSystem, viewModel.SelectedSystemRowsCommand, "SystemRows"); placeSystem.Content = xdgSystem; var xdgImport = (DataGrid)Resources[SHARED_DATAGRID]; bindData(xdgImport, viewModel.SelectedImportRowsCommand, "ImportRows"); placeImport.Content = xdgImport;
  在使用DataGrid的时候,有时候需要使某些列为ComboBox,这时自然想到使用DataGridComboBoxColumn,但是如果使用的是ItemsSource数据绑定后台的对象,就会发现,这根本就不能用。   首先,看有问题的代码: 1 using System.Windows; 2 using System.Collections.ObjectModel;...
WPF DataGridComboBoxColumn数据绑定 <!--DataGrid的列并没有数据上下文,所以其ItemsSource绑定要向上查找 --> <DataGridComboBoxColumn Header="省份"> <DataGridComboB...
WPF, DataGrid中的DataGridComboBoxColumn,如何单击显示下拉框默认双击才能出现下拉框,现在客户需要单击就显示,如何解决。 默认双击才能出现下拉框,现在客户需要单击就显示,如何解决。 step 1: private void datagrid1_CurrentCellChanged(object sender, EventArgs e) datagrid1...
DataGridView的CellEnter的事件中添加如下代码即可: if (e.ColumnIndex == dataGridView1.Columns["仓库名"].Index) { dataGridView1.BeginEdit(false); System.Windows.Forms.ComboBox c = dataGridView1.EditingCont...
本次的文献是Wpf mvvm框架下实现表格编辑,在表格内放入下拉框,给表格内的下拉框赋予数据库中的数据如何实现。这个问题困扰了我很久,应为在Mvvm模式下不能直接选择下拉框的名称,直接赋值,然后用普通的下拉框赋值的方法也赋值不了,我也想了办法用Wpf那种下拉框赋值也赋值不了。在网上找了资料也很少,后面找到一个相似的方法,然后根据他的方法改写成了我现在需要的方法才实现了这个功能。 首先这就是我们的html 这就是表格内的单位下拉框,然后我们赋值的就是UnitSheet,这个了。 <DataGri
网上查找很多方法都不理想,参考部分文章,找到理想的办法: <DataGrid x:Name="dgrid" Width="250" Grid.Row="0" CanUserSortColumns="True" CanUserDeleteRows="False" AutoGenerateColumns="False"> <DataGrid.Columns> <DataGridTextColumn x:N
介绍数据表格DataGrid的基础用法。 DataGrid可用AutoGenerateColumns属性控制列的生成。Column包含DataGridTextColumnDataGridCheckBoxColumnDataGridComboBoxColumnDataGridHyperlinkColumnDataGridTemplateColumn等5中格式。 1.DataGridTextColumn DataGridTextColumn最常用,不再做介绍。 2.DataGridCheckBoxCol
WPF DataGrid绑定是一种将数据绑定WPF DataGrid控件的方法,以便以可视化的方式展示数据。在WPF中,可以使用多种方式绑定DataGrid。其中,最常用的方式包括绑定数据表格以及绑定数据集。 对于绑定数据表格的方式,需要先使用数据源控件建立数据表格,然后使用WPF DataGrid控件将其绑定。这种方式的优点在于数据绑定更加灵活,可以根据具体情况选择绑定单个表格、多个表格、甚至是不同数据源的表格。不过,需要注意的是,在处理数据表格的时候,需要将其绑定到正确的数据源,否则会导致数据丢失或者无法正常显示。 另一种方式是绑定数据集,这种方式最大的优点就是可以自动将整个数据集的数据绑定WPF DataGrid控件上,不需要手动处理每个数据表格。不过,需要注意的是,如果数据集比较大,可能会导致性能下降,同时也不够灵活,无法针对具体的数据表格进行更细致的操作。 无论是哪种方式,对于WPF DataGrid绑定,需要注意以下几个方面: 1.正确设置数据源、绑定属性以及展示方式; 2.数据绑定时注意调用缓存机制,以便提高性能; 3.数据绑定时遵循MVVM框架中的命令式绑定方式,以便更好地控制数据的展示和交互。