如何在C#中用弹出窗口来对DataGrid的某一列进行修改

C# WPF的DataGrid中获取当前行地数据(修改、删除)以删除为例 #region 删除按钮的点击事件 // 删除 private void BtnDeleteOne_Click(object sender, RoutedEventArgs e) { //获取需要删除的行 //DataRowView SelectedRow = dgrdView.SelectedIte... 阅读详情

DataGrid是可以绑定ComboBox来进行选择某一列的值,但是有时候选项太多,或者通过一列数据无法完全说明选项含义的时候,就希望来弹出一个窗口,来对子项进行更充分的说明,以供选择。

 

我下面的例子就是说明如何实现一个弹出窗口来对子项进行选择。

首先,继承DataGridTextBoxColumn来定义自己的数据列,具体如下:

public delegate string PopupWindow();

public class DataGridPopupColumn: DataGridTextBoxColumn

{

    private Panel pnlPopup;//Basic control for column

    private System.Windows.Forms.CurrencyManager _source = null;

    private int _rowNum;

    public static int _RowCount = -1;

    PopupWindow PopupWindowHandle;

 

    public DataGridPopupColumn( PopupWindow ShowPopupWindow ) : base()

    {

        // Init class members

        PopupWindowHandle = ShowPopupWindow;

        pnlPopup = new Panel();

 

        // Define event handler

        pnlPopup.Leave += new EventHandler( LeavePanel );

        pnlPopup.Click += new EventHandler( ClickPanel );

        pnlPopup.Paint += new PaintEventHandler( PaintPanel );

    }

 

    private void LeavePanel( object sender, EventArgs e )

    {

        pnlPopup.Hide();//Hide panel

    }

 

    private void ClickPanel( object sender, EventArgs e )

    {

        // Show a window to select value

        object objReturn = this.pnlPopup.Parent.Invoke( PopupWindowHandle );

        if( objReturn != null )

        {

            // Get value from window result

            this.TextBox.Text = objReturn.ToString();

 

            // Save it to data source

            SetColumnValueAtRow( _source, _rowNum, this.TextBox.Text);

 

            // Re-draw panel

            this.pnlPopup.Refresh();

            Invalidate();

        }

    }

 

   

C#实现DataGrid数据导出到Excel教程 NET框架中,DataGrid控件是一个重要的用户界面元素,主要用于以表格形式显示数据集合。它不仅能够呈现数据,还允许用户对数据进行交互式操作,如排序、分页以及行的增删改查等。DataGrid控件广泛应用于数据密集型应用程序中,特别是在展示复杂数据结构时。 阅读详情

相关推荐

C#DataGridview中使用ComboBox实现Column手动输入内容

摘要:C#源码,数据库应用,DataGridview C# DataGridview中使用ComboBox,实现Column可以手动自由输入。在winform datagridview中使用下拉框, 既可以从下拉框里选择数据,也可以让使用者自己手动往里面输入数据。虽然简单,不过觉得挺实用的功能。 运行环境:Visual Studio2010

3.c#自定义属性弹出编辑

这里我们想定义一个自定义类型,同样也能弹出编辑先创建一个类Scope.cs,用于声明为自定义属性set;get;set;get;} } }核心在于ScopeEditor,属性编辑器ScopeEditor.cs= null) {= null) {= null) {} } }模态弹出框ScopeEditorDialog.cstry {

adsd1233123的博客 1177

C# Devexpress gridControl 自定义编辑器 设置弹出框(弹出框包含gridLookUpEdit)

个人记录一下,省的忘了。。。                    // ----------设置弹出框的样式                     //桩号下拉框选择                     RepositoryItemGridLookUpEdit gridLookUpEdit = new RepositoryItemGridLookUpEd

twenwen的专栏 1万+

C# Winform Datagridview控件使用和详解

C# Winform Datagridview控件使用和详解

lvxingzhe3的博客 1万+

Winform在DataGridView中实现下拉筛选(保存筛选条件)

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Diagnostics; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Windows.Forms.VisualStyles; using System.Collections

weixin_42430576的博客 4495

DataGridView中增加一个选择框checkbox

这样代码加载完成后显示的界面效果就为图1中所示;

qq_43183309的博客 2378

[转载]如何在C#中用弹出窗口来对DataGrid的某一列进行修改

如何在C#中用弹出窗口来对DataGrid的某一列进行修改如何在C#中用弹出窗口来对DataGrid的某一列进行修改 DataGrid是可以绑定ComboBox来进行选择某一列的值,但是有时候选项太多,或者通过一列数...

congji3817的博客 321

c#中在DataGrid里创建一个弹出窗口------可实现源代码

DataGrid中创建一个弹出窗口                        这篇文章来自DotNetJunkie的提议。他最初写信要求我们提供一个关于如何创建在DataGrid 中使用HyperLinkColumn的例子,可以在用户点击这一列后打开一个新窗口,显示出此列的详细内容。在此之前我们曾经通过email回答他们,他建议我们将这个方法加入他们的指南中,于是,就有了这篇文章。像我们原

伴老 1890

DataGrid中创建一个弹出窗口【转载】

这篇文章来自DotNetJunkie的提议。他最初写信要求我们提供一个关于如何创建在DataGrid 中使用HyperLinkColumn的例子,可以在用户点击这一列后打开一个新窗口,显示出此列的详细内容。在此之前我们曾经通过email回答他们,他建议我们将这个方法加入他们的指南中,于是,就有了这篇文章。像我们原来的文章一样,它很简单,但是简单的包含代码的方法例可以更有效地启发开发者...

dieshiji0937的博客 176

演示弹出窗口传递参数,并用参数来动态修改DataGrid的列

演示弹出窗口传递参数,并用参数来动态修改DataGrid的列源代码下载/Files/singlepine/father.rar  

此故为何 702

DataGrid中创建一个弹出窗口

 这篇文章来自DotNetJunkie的提议。他最初写信要求我们提供一个关于如何创建在DataGrid 中使用HyperLinkColumn的例子,可以在用户点击这一列后打开一个新窗口,显示出此列的详细内容。在此之前我们曾经通过email回答他们,他建议我们将这个方法加入他们的指南中,于是,就有了这篇文章。像我们原来的文章一样,它很简单,但是简单的包含代码的方法例可以更有效地启发开发者。  这个例

~笨鸟想飞~ 885

DataGrid中删除记录时弹出确认窗口

首先用模板列:删除后台:VB:    Sub dgrd_ItemCreated( s As Object, e As DataGridItemEventArgs )        Select Case e.Item.ItemType               Case ListItemType.Item, ListItemType.AlternatingItem               

一月三十一日 1241

从零开始写C# MVC框架之--- 集成DataGrid、layer弹出层、ZTree

1、DataGrid控件:网上有很多:jqGrid、EasyUi的datagrid、datatables等等,选择后下载,添加到项目,并引入到框架,都提供有API调用,使用方式大同小异,在页面中定义一个Id区域存放列表,使用js获取数据,后台返回datagrid控件需要的数据格式 2、layer弹出层:layer是一个比较优秀的第三方弹出层,使用简单,官方提交比较好的API支持,集成到框

zhuyu19911016520 4551

当双击DataGrid的一项时,弹出窗口进行内容编辑.

本文转载自:http://www.cnblogs.com/xxcainiao/archive/2008/05/03/1180462.html  还可以参考:http://www.iteye.com/topic/356788   通过PopUpManager和itemRenderer实现。 示例: 代码: MXML文件: xml version="1.0" encodi

草根的理想 982

6.Silverlight弹出窗口以及DataGrid分页

继上节所讲,在上一节中,我们讲述了DataGrid绑定webService传输过来的XML数据实体类集合。在本节我们将这个DataGrid移动到 一个ChildWindow中去。然后实现ChildWindow的弹出效果。以及对这个DataGrid的分页效果。实例源代码也是在上一节的基础上做 一些改动而来。 一.Silverlight弹出子...

weixin_34270606的博客 98
上一篇: 如何用C#做一个悬浮窗口程序
下一篇: 浅谈如何使用ADO.NET操作数据库
Knight94
博客等级 码龄24年 1013粉丝 87原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值