困扰了好几天,求各位大神支持。DataGridViewComboBoxCell问题

小菜虫一只 2018-06-11 11:17:43
我有个datagrid绑定了数据库某个表的A,B,C字段的信息,我需要把其中一个列A作成下拉菜单。
A的值包含1,2,3. 对应的下拉菜单显示信息为“你”,“好”,“吗”.

使用现在的代码,下拉菜单添加成功。但是有一问题,初始化界面时,下拉菜单显示的是ValueMember ,而不是DisplayMember 。点击下拉菜单后,显示的是DisplayMember 。当光标移走点击别处时,又变回了ValueMember。查了两三天都没有查出来为什么。大家能不能帮帮我。谢谢


我在初始化时,为datagridView赋值后,增加了下面的代码。
_ctrlGridQ.gridView.RowsAdded += vRowsAdded;

//为下拉菜单赋值
private void vRowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
{
var getCell = new Func<int, string, DataGridViewCell>((rowIdx, cellName) =>
_ctrlGridQ.gridView.Rows[rowIdx].Cells[cellName]);


try
{
int rowIndex = e.RowIndex;
int rowCount = e.RowCount;
for (int i = rowIndex; i < rowIndex + rowCount; i++)
{
var rRow = _ctrlGridQ.gridView.Rows[i];
using (var A_Cell = getCell(i, "A") as DataGridViewComboBoxCell)
{
A_Cell.DisplayStyle = DataGridViewComboBoxDisplayStyle.ComboBox;
A_Cell.DataSource = EnumToDataTable(typeof(A_Status));
A_Cell.DisplayMember = "Key";
A_Cell.ValueMember = "Value";
}
}
}
catch (GCUIException ex)
{
GCMessageBox.ShowBox(ex.Message, "error");
}
}



//将下拉菜单对应内容转为datatable
public static DataTable EnumToDataTable(Type A_Status)
{
string[] Names = Enum.GetNames(A_Status);
for (int i = 0; i < Names.Length; i++)
{
Names[i] = GCLngSupport.sGetString(Names[i]);
}

Array Values = Enum.GetValues(A_Status);

DataTable table = new DataTable();
table.Columns.Add("Key", System.Type.GetType("System.String"));
table.Columns.Add("Value", System.Type.GetType("System.Int32"));
table.Columns["Key"].Unique = true;
for (int i = 0; i < Values.Length; i++)
{
DataRow DR = table.NewRow();
DR["Key"] = Names[i];
DR["Value"] = (int) Values.GetValue(i);
table.Rows.Add(DR);
}

return table;
}

//A 对应下拉菜单内容定义
public enum A_Status
{
"你" = 1,
“好” = 2,
“吗” = 3,
}


...全文
262 1 打赏 收藏 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
小菜虫一只 2018-06-11
  • 打赏
  • 举报
回复
自己解决了,以后有其他问题再请教大家,谢谢各位。
内容概要:本文提出了一种基于混沌系统与DNA编码的复合型彩色图像加密解密方案,旨在解决传统图像加密算法安全性不足及抗干扰能力弱的问题。方案通过混沌系统的伪随机序列对图像像素进行全局置乱,并结合DNA碱基编码的多维扩散特性实现像素值的深层混淆,构建了“置乱-扩散”双重保护机制。研究不仅系统验证了算法在密钥空间、密钥敏感性、信息熵等方面的安全性能,还重点开展了多场景、多强度的抗噪声与抗裁剪性能分析,证实了其在高斯噪声、椒盐噪声干扰及不同位置、面积裁剪攻击下的卓越鲁棒性,弥补了现有研究在实用性方面的不足。; 适合人群:具备一定信息安全、图像处理或密码学基础,从事科研或工程开发的研究生、教师及技术人员。; 使用场景及目标:①为彩色图像在网络传输、医疗影像、军事通信等高安全需求场景下的保密存储与传输提供高鲁棒性加密方案;②为研究复合型图像加密算法的设计与性能评估提供系统性参考; 阅读建议:读者应重点关注混沌与DNA编码的融合机制、加密流程设计以及抗干扰性能的测试方法,建议结合文中提到的仿真结果深入理解算法的实用性与优化方向,并可进一步探索其在视频加密或多模态数据保护中的扩展应用。
内容概要:WiFiSupply斯普莱WFS7000BDAX是一款高性能、电信工业级双射频双频分体式无线基站,支持2.4G和5.8G频段的WiFi6(802.11ax)标准,采用4T4R MIMO架构,双射频最大带宽达2974Mbps,点对点实际吞吐量超过1500Mbps。设备具备高发射功率(单射频28dBm)、超强抗干扰能力、通信延迟≤1ms、支持OFDMA、FastRoaming快速漫游、LD长距离优化协议等核心技术,配合高增益天线可实现3km覆盖或150公里点对点桥接。产品支持宽电压POE供电(12-30V,可选48V),具备IP68防护等级和-45~85℃宽温工作能力,通过多项国家级认证,适用于恶劣环境下的稳定运行。支持胖瘦一体模式、云管理平台、API对接、SNMP、SSH等丰富管理方式,提供多重加密与安全防护机制,适用于工业4.0、智慧物流、智能驾培、AGV小车、车载船载视频传输等复杂场景。; 适合人群:从事工业无线通信、网络工程、物联网系统集成的技术人员及项目决策者,具备一定网络基础知识和现场部署经验的工程师。; 使用场景及目标:①用于远距离无线桥接与大面积无线覆盖,如森林防火监控、智慧交通信号回传;②满足高密度、高移动性终端接入需求,如AMR/AGV小车组网、无人机遥控;③在强电磁干扰或极端气候环境下构建高可靠无线网络,保障视频传输、PLC控制等关键业务连续性;④通过云平台或本地服务器实现集中运维管理和安全认证。; 阅读建议:此文档为产品技术规格说明书,重点在于了解设备性能边界与适用场景,建议结合实际项目需求对照参数选型,并关注其私有协议、安全隧道、抗干扰设计等差异化功能的实际部署配置方法。

111,128

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧