社区
C#
帖子详情
WinForm DataGrid 点击问题!!!
builder666666
2005-11-17 05:27:58
当点击DataGrid中的某行或某个Cell时(DataGrid中的数据是通过DataSet得到的),能弹出一个对话框,这个对话框能显示点击的这一行的所有子段信息,请问各位仁兄,应该如何实现???
谢谢!!!
...全文
227
11
打赏
收藏
WinForm DataGrid 点击问题!!!
当点击DataGrid中的某行或某个Cell时(DataGrid中的数据是通过DataSet得到的),能弹出一个对话框,这个对话框能显示点击的这一行的所有子段信息,请问各位仁兄,应该如何实现??? 谢谢!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhaoyawei
2005-12-23
打赏
举报
回复
private void dataGrid1_Click(object sender, System.EventArgs e)
{
}
可以声名这个函数,之后实现它就可以了
声名:this.dataGrid1.Click += new System.EventHandle(this.dataGrid1_Click)
datauser
2005-11-18
打赏
举报
回复
CurrentCellChanged中获取你选中行的值,再传给你要弹出的对话框
builder666666
2005-11-18
打赏
举报
回复
怎么没有人?给点思路也行呀!!!谢谢!
builder666666
2005-11-18
打赏
举报
回复
哦!理解啦,我的代码有问题,关键是在这里
dataGrid1.DataSource = dataSet.Tables[0].DefaultView;<---这里有问题,为什么这样不行呢?
应该改为 dataGrid1.DataSource = dataSet;
但为什么要这样做呢?
谢谢!各位的热心帮忙!
skywarrior
2005-11-18
打赏
举报
回复
JasonHeung 的代码就是完全正确的, 在自己研究一下吧, 你的dataGrid的数据源是dataView, myBind = this.BindingContext[dataSet,"Book"]指向的是dataTable
builder666666
2005-11-18
打赏
举报
回复
能否给一个例子:builder666666@sina.com.cn
谢谢!
builder666666
2005-11-18
打赏
举报
回复
好像不行呀?能否给个例子,谢谢!我的代码如下:
点击了DataGrid上的某行后,MessageBox并没有弹出!!!
static void Main()
{
Application.Run(new Form1());
}
private void button1_Click(object sender, System.EventArgs e)
{
string connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:/test.mdb";
conn = new OleDbConnection(connStr);
command = conn.CreateCommand();
command.CommandText = "Book";
command.CommandType = CommandType.TableDirect;
adapter = new OleDbDataAdapter(command);
dataSet = new DataSet("Book");
adapter.Fill(dataSet,"Book");
dataGrid1.ReadOnly = true;
dataGrid1.DataSource = dataSet.Tables[0].DefaultView;
myBind = this.BindingContext[dataSet,"Book"];
myBind.CurrentChanged += new EventHandler(myBind_CurrentChanged);
//MessageBox.Show(Path.GetFullPath("."));
}
private void myBind_CurrentChanged(object sender, System.EventArgs e)
{
MessageBox.Show("ok");
}
private void dataGrid_Click(object sender, System.EventArgs e)
{
}
JasonHeung
2005-11-18
打赏
举报
回复
void Form1_Load(...)
{
myBindingManagerBase = this.BindingContext[dsUpdate,dsUpdate.Tables[0].TableName];
myBindingManagerBase.CurrentChanged += new EventHandler(myBindingManagerBase_CurrentChanged);
}
private void myBindingManagerBase_CurrentChanged(object sender, EventArgs e)
{
//在这里处理
if (null != CurrentRow)
{
}
}
BindingManagerBase myBindingManagerBase;
/// <summary>
/// 返回当前行
/// </summary>
/// <returns></returns>
protected DataRow CurrentRow
{
get
{
if (null == myBindingManagerBase || myBindingManagerBase.Position == -1)
{
return null;
}
else
{
return ((DataRowView)myBindingManagerBase.Current).Row;
}
}
}
止戈而立
2005-11-18
打赏
举报
回复
CurrentCellChanged用这个事件写的话。。
排序后的值不会错的。。
builder666666
2005-11-18
打赏
举报
回复
能否具体点,我的意思是,点击DataGrid的某一行或某一个Cell时,但是只要点击了DataGrid中表头的排序,获得的值就不对了。请指点!!!
builder666666
2005-11-17
打赏
举报
回复
ding
WinForm
Datagrid
结构剖析
WinForm
Datagrid
结构剖析
WinForm
Datagrid
结构
WinForm
Datagrid
结构剖1
从新手小白进入
WinForm
编程 (VS2019)
WinForm
框架 是 Windows Form 的简称,是美国微软公司Microsoft开发基于 .NET Framework 平台的桌面运用程序框架,一般使用 C#语言 编写。
WinForm
框架可用于设计窗体和可视控件,采用面向对象语言C#,可快速创建绚丽漂亮的基于Windows的桌面应用程序,提供丰富的控件与第三方开源组件,依靠.Net平台的成熟生态,让开发者可以高效快速的开发企业级项目!本课程是黄老师的 .Net平台开发系列课程之一,通过
WinForm
框架控件与精炼知识点的梳理与细致讲解,结合代码实战演练,帮助学员迅速掌握
WinForm
开发,达到企业级
WinForm
开发的水平!
C#
winform
开发
DataGrid
带筛选功能
C#
winform
开发中
DataGrid
设计带有筛选功能!含源代码,值得一看!
WinForm
Datagrid
结构剖
WinForm
Datagrid
结构剖
C#
110,536
社区成员
642,578
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章