DevExpress弹框、右键菜单、Grid的使用
很重要!!!Dev为了区分winform的命名,会把一些新添加的属性放在Properties对象里!!找不到想要的属性,记得到里面找找哦!
一、下拉框
在这里假设我们的数据源是db.List(),在这里我主要讲述关于数据源绑定的方式。
1、winform的下拉框【comboBox】
!!下拉框的绑定需要三个:数据源,显示值,隐藏值
this.comboBox.DisplayMember="DisplayName";//数据源字段名称【显示值】
this.comboBox.ValueMember = "ValueName";//数据源字段名称【隐藏值】
this.comboBox.DataSource=db.toList();//绑定数据源
2、Dev的下拉框【comboBoxEdit和lookUpEdit】
!!前者没办法绑定数据源,只能通过遍历的方式去添加数据,后者可以绑定数据源,且功能强大!!很重要!!!Dev为了区分winform的命名,会把一些新添加的属性放在Properties对象里!!找不到想要的属性,记得到里面找找哦!
(1)comboBoxEdit的遍历绑定数据
this.comboBoxEdit1.Properties.Items.Add("请选择");
this.comboBoxEdit1.Properties.Items.Add("中国");
this.comboBoxEdit1.Properties.Items.Add("美国");
(2)lookUpEdit的遍历绑定数据
this.lookUpEdit1.Properties.DisplayMember ="DisplayName";//数据源字段名称【显示值】
this.lookUpEdit1.Properties.ValueMember = "ValueName";//数据源字段名称【隐藏值】
this.lookUpEdit1.Properties.DataSource = db.toList();//绑定数据源
那么这个到底强大在哪里呢??它可以显示更多的字段,而不是在局限于一个显示字段。
二、弹出窗
1、winform的弹出窗【MessageBox】
MessageBox.Show("内容");
2、Dev的弹出窗【XtraMessageBox和alertControl右下角弹出窗】
(1)XtraMessageBox用法
XtraMessageBox.Show("内容");
(2)alertControl用法(需要往窗口拖一下控件)
this.alertControl1.Show(this,"提示","您有一封消息");//this当前窗体,“提示”标题,“您有一封消息”内容
点击事件是AlertClick
三、右键菜单
1、winform的右键菜单【contextMenuStrip】
这个没啥说的类,在需要的控件上绑定一下就好了
2、Dev的右键菜单【popupMenu和barManager】
!!在这里提示一下,这是一个组合控件,单独用popupMenu就会出现上面的情况,我们还需要控件barManager
当俩个控件都拖动后,会自动形成绑定
这样子才可以使用嘞!
!popupMenu和barManager案例
第一步、添加右键菜单内容
第二步、页面实现右键功能
给窗口添加一个点击事件
private void XtraForm3_MouseClick(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)//如果点击为右键
{
//激活右键菜单
//new Point(Cursor.Position.X,Cursor.Position.Y)鼠标所在焦点
this.popupMenu1.ShowPopup(new Point(Cursor.Position.X, Cursor.Position.Y));
}
}
四、Grid控件获取选中的数据
1、winform获取选中数据
(1)、单个选中
private void dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
//获取当前点中单元格的值
string content = this.dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
//获取当前选中行数据
=var data = this.dataGridView1.Rows[e.RowIndex].DataBoundItem;
MessageBox.Show(content);
}
(2)、整行选中
在窗体加载事件,设置
//设置为整行选中
this.dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
private void dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
{
//获取当前点中单元格的值
string content = this.dataGridView1.SelectedRows[0].Cells[e.ColumnIndex].Value.ToString();
//获取当前选中行数据
var data = this.dataGridView1.SelectedRows[0].DataBoundItem;
MessageBox.Show(content);
}
2、Dev获取选中数据【gridControl】
private void gridView1_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e)
{
//焦点所在的数据
string content = this.gridView1.GetFocusedValue().ToString();
//焦点所在的数据行
var data = this.gridView1.GetFocusedRow();
MessageBox.Show(content);
}
结束语
学习要一步一步来,一步吃不成大胖子!
DevExpress弹框、右键菜单、Grid的使用的更多相关文章
- 如何在 QWidget 窗口上弹出右键菜单
Title : QWidget 窗口上弹出右键菜单的两个方法 Solution 1 : 给一个 QWidget 添加 QActions,设置 QWidget 的 contextMenuPolicy 属 ...
- WPF datagrid 弹出右键菜单时先选中该项
private void datagrid_PreviewMouseRightButtonDown(object sender, MouseButtonEventArgs e) { ...
- DevExpress GridView加入DevExpress中的右键菜单PopuMenu
1. 添加一个Barmanager控件 2. 加入popumenu控件,点击该控件右上角的黑色三角号,编辑选项,点击编辑的选项,选择事件,编辑事件. 3. 在使用该右键菜单的控件添加MouseUp事件 ...
- Android中实现长按照片弹出右键菜单
场景 效果 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书.教程推送与免费下载. 实现 将布局改为Lin ...
- DevExpress使用教程:XtraGridControl动态添加右键菜单
在使用 GridControl 的时候经常需要添加右键菜单.一般的做法是自己创建菜单项,然后注册GridView的Mouse-Click事件,然后Show出定义好的菜单.但是涉及到一些单击事件会收到编 ...
- WPF 如何控制右键菜单ContextMenu的弹出
在具体做一些项目的时候,有时候需要需要先左键点击某个节点,然后再右键点击节点的时候才弹出右键菜单,所以直接右键点击时需要禁用掉右键菜单,这里比如我们为Grid添加了ContextMenu,但是我们需要 ...
- 转:C#判断ContextMenuStrip右键菜单的来源(从哪个控件弹出来的)
转载自:http://hi.baidu.com/cookiemulan/item/82df8ff867dd53cc531c26c7 有时候,为了提高性能和节约资源,我们会为多个控件,指定同一个右键弹出 ...
- 给tkinter文本框添加右键菜单
给tkinter文本框添加右键菜单 需求:直接右键点击使用tkinter创建的文本框是不会弹出菜单的.我们需要实现右键点击tkinter框架下的Entry对象.Text对象后弹出右键菜单可复制.粘贴和 ...
- 【技术贴】7-zip 7z关联右键菜单后右键不弹出菜单的解决办法
解决7z,7zip右键菜单 失效 右键菜单 无法弹出右键菜单 不正常 右键菜单 sb等各种疑难杂症. 1.首先先去7z的选项里面把右键关联给设置了. 用的好好的7z,正吃着火锅唱着歌忽然发现右键单文件 ...
随机推荐
- atcoder ABC 232 B~E题解
B 模拟,水题 #include<bits/stdc++.h> using namespace std; char s1[100005],s2[100005]; int a1[100005 ...
- 2022-7-14 java_2 第七组 刘昀航
@ 目录 一.java约定规范 1.关于建包 2.控制台输入(Scanner) 关于Scanner的bug 计算器小练习: 二. 1.数组 建立数组的三种方式: 数据类型的初始值: 2.二维数组 使用 ...
- 通过Nginx(OpenResty)修改UserAgent
通过OpenResty修改UserAgent,非常简单,Demo里做了多次反向代理是为了日志输出显示效果.实际应用中不必这么麻烦. 浏览器访问如下地址即可 http://127.0.0.1:10090 ...
- 内存问题难定位,那是因为你没用ASAN
摘要:ASAN全称:Address Sanitizer,google发明的一种内存地址错误检查器.目前已经被集成到各大编译器中. 本文分享自华为云社区<内存定位利器-ASAN使用小结>,作 ...
- BZOJ4337 树的同构 (树哈希)(未完成)
样例迷,没过 交了30pts #include <cstdio> #include <iostream> #include <cstring> #include & ...
- UVA1306 The K-League(最大流)
题面 有 n n n 支队伍进行比赛,每支队伍需要打的比赛数目相同. 每场比赛恰好一支队伍胜,另一支败. 给出每支队伍目前胜的场数 w i w_i wi 和败的场数(没用),以及每两个队伍还剩下的比 ...
- 「2020-2021 集训队作业」Yet Another Linear Algebra Problem(行列式,Binet-Cauchy 公式)
题面 出题人:T L Y \tt TLY TLY 太阳神:Tiw_Air_OAO 「 2020 - 2021 集 训 队 作 业 」 Y e t A n o t h e r L i n e a r A ...
- 【python】一些python用法规律笔记
作为本科用了多年MATLAB的工科生,学起来python有些似曾相识但也有些不习惯的地方. 在这里总结一下,慢慢整理,希望能巩固python语法 一.前闭后开 这个是和MATLAB很大不同.不论是ra ...
- 在Laravel框架blog中,终端的一些命令
创建控制器php artisan make:controller TestController数据库迁移php artisan make:migration create_goods_table实行迁 ...
- C#运用事件步骤(usual)
1.声明一个委托 委托跟Main函数在同一个NameSpace中.或者在class A中. delegate void delegateFuncA; 2.声明一个事件 在class A中 public ...