如何从 datagridview 创建主详细信息

2023-12-12

这段代码插入数据库

 private void btnSave_Click(object sender, EventArgs e)
    {
        byte[] imageBt = null;
        FileStream fstream = new FileStream(this.txtImgPath.Text,FileMode.Open,FileAccess.Read);
        BinaryReader Br = new BinaryReader(fstream);
        imageBt = Br.ReadBytes((int)fstream.Length);
       // byte[] pic = stream.ToArray();
        try
        {
            conDB.Open();
            OleDbCommand command = new OleDbCommand();
            command.Connection = conDB;
            command.CommandText = "insert into abaanaCC (CCSpn_CODE,CCFname,CCLname,CCMname,CCDOB,CCgender,CCSchool,CaClass,CCVillage,CCSiblings,CCGuardian,CCContact,CCImage)" +
                " values ('" + spn_codetxt.Text + "','" + txtfname.Text + "','" + lnametxt.Text + "','" + mnametxt.Text + "','" + DOBDTPicker1.Text + "','" + gendercomboBox.Text + "','" + schtxt.Text + "','" + classcomboBox.Text + "','" + villatxt.Text + "','" + siblingscombobx.Text + "','" + guardiantxt.Text + "','" + contacttxt.Text + "',@IMG) ";
            command.Parameters.Add(new OleDbParameter("@IMG",imageBt));
            //command.Parameters.AddWithValue("@IMG",pic);
            command.ExecuteNonQuery();
            MessageBox.Show("Record Saved");
        }
        catch (Exception ex)
        {
            MessageBox.Show("Unable to save" + ex);
        }
        conDB.Close();
    }

那么这是针对 datagridview 的

private void Update_Load(object sender, EventArgs e)
    {
        // TODO: This line of code loads data into the 'abaanaDataSet.abaanaCC' table. You can move, or remove it, as needed.
        this.abaanaCCTableAdapter.Fill(this.abaanaDataSet.abaanaCC);

    }

我使用单元格单击事件,这样当单击单元格时,该行的内容,即CCImage and CCSpn_CODE出现。这CCSpn_CODE出现在Ptxtspn_code textBox正好。问题是我正在转换的 byte[] 图像。它只显示第一行的图像。我怎样才能使PpicBox显示我点击的任何行中的任何图像datagridView就像Ptxtspn_code textBox

 private void abaanaCCDataGridView_CellClick(object sender, DataGridViewCellEventArgs e)
    {
            this.Ptxtspn_code.Text = this.abaanaCCDataGridView.SelectedRows[0].Cells[this.dataGridViewTextBoxColumn2.Name].Value.ToString();
this.abaanaCCTableAdapter.Fill(this.abaanaDataSet.abaanaCC);           
byte[] mydata = (byte[])this.abaanaDataSet.abaanaCC.Rows[0]["CCImage"];
          MemoryStream stream = new MemoryStream(mydata);           
         this.PpicBox.Image =Image.FromStream(stream);

 }

Note:

  • In CellClick您应该检查单击是否不在行标题或列标题上的事件
  • e.RowIndex是单击的单元格的行索引,并且e.ColumnIndex是单击的单元格的列索引
  • To get values of clicked row you can use:
    • yourDGV.Rows[e.RowIndex].Cells["GridColumnName"].value
    • yourDGV.Rows[e.RowIndex].Cells[2].Value
    • ((DataRowView)yourDGV.Rows[e.RowIndex].DataBoundItem)[2]
    • ((DataRowView)yourDGV.Rows[e.RowIndex].DataBoundItem)["DataTableColumnName"]
  • 我不知道你为什么填写 abaanaCCCellClick因为您在表单加载事件中加载数据,所以包括 CCImage 在内的所有值都存在于您的数据表中。所以我把它删除了。似乎只有当您想要加载数据而不是在单元格单击中时才应该填写它。

例如你的代码可能是这样的:

private void abaanaCCDataGridView_CellClick(object sender, DataGridViewCellEventArgs e)
{
    if (e.RowIndex < 0 || e.ColumnIndex < 0)
        return;

    this.Ptxtspn_code.Text = this.abaanaCCDataGridView.Rows[e.RowIndex].Cells[this.dataGridViewTextBoxColumn2.Name].Value.ToString();       
    byte[] mydata = (byte[])this.abaanaDataSet.abaanaCC.Rows[r.RowIndex]["CCImage"];
    MemoryStream stream = new MemoryStream(mydata);           
    this.PpicBox.Image =Image.FromStream(stream);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 datagridview 创建主详细信息 的相关文章

  • Volatile.Read 和 Volatile.Write 背后的逻辑是什么?

    来自 MSDN Volatile Read 读取字段的值 在需要它的系统上 插入一个 阻止处理器重新排序内存的内存屏障 操作如下 如果在该方法之后出现读或写 代码 处理器无法移动它before这个方法 and Volatile Write
  • 我应该把 try/catch 和“using”语句放在哪里? [复制]

    这个问题在这里已经有答案了 可能的重复 try catch using 正确的语法 https stackoverflow com questions 4590490 try catch using right syntax 我想try c
  • IEnumerable 的 String.Join(string, string[]) 的类似物

    class String包含非常有用的方法 String Join string string 它从数组创建一个字符串 用给定的符号分隔数组的每个元素 但一般来说 它不会在最后一个元素之后添加分隔符 我将它用于 ASP NET 编码 以用
  • 司机和提供商之间的区别

    数据库中的驱动程序和提供程序有什么区别 有没有解释一下 不胜感激 样本 ADO NET driver for MySQL vs providerName System Data EntityClient 来自 MSDN 论坛 驱动程序是安装
  • 将设置函数(setter)标记为 constexpr 的目的是什么? [复制]

    这个问题在这里已经有答案了 我无法理解将 setter 函数标记为的目的constexpr 自 C 14 起这是允许的 我的误解来自以下情况 我使用 constexpr c tor 声明一个类 并且我将通过创建该类的 constexpr 实
  • C++ 将联合强制转换为其成员类型之一

    以下对我来说似乎完全符合逻辑 但不是有效的 C 联合不能隐式转换为其成员类型之一 有人知道为什么不这样做的充分理由吗 union u int i char c function f int i int main u v v i 6 f v
  • while循环中的变量初始化

    我有一个可以分块读取文件的函数 public static DataObject ReadNextFile 数据对象看起来像这样 public DataObject public string Category get set And ot
  • C# 编译器数字文字

    有谁知道 C 编译器数字文字修饰符的完整列表 默认情况下 声明 0 使其成为 Int32 声明 0 0 使其成为 Double 我可以在末尾使用文字修饰符 f 来确保某些内容被视为 Single 例如像这样 var x 0 x is Int
  • 有什么方法可以重载 C# 中的扩展方法吗?

    我有以下模型模式 public abstract class PARENTCLASS public class CHILD A CLASS PARENTCLASS public static class EXTENSION public s
  • 如何使用 Roslyn 通过扩展方法、静态类中的方法以及带有 ref/out 参数的方法来访问调用

    我正在致力于创建一个开源项目 用于创建 NET UML 序列图 该项目利用名为 js sequence diagrams 的 javascript 库 我不确定 Roslyn 是适合这项工作的工具 但我想我应该尝试一下 所以我整理了一些概念
  • 使用 C# 中的 Google 地图 API 和 SSIS 包获取行驶距离

    更新 找到了谷歌距离矩阵并尝试相应地修改我的代码 我在这里收到无效参数错误 return new GeoLocation dstnc uri ToString catch return new GeoLocation 0 0 https 基
  • 子目录中的头文件(例如 gtk/gtk.h 与 gtk-2.0/gtk/gtk.h)

    我正在尝试使用 GTK 构建一个 hello world 其中包括以下行 include
  • 用于连接 DataTable 上的动态列的动态 LINQ

    我目前遇到的情况不确定如何继续 我有两个从数据库填充的数据表 我还有一个可用的列名称列表 可用于将这两个数据表连接在一起 我希望编写一组 LINQ 查询 这些查询将 显示两个数据表中的行 内部联接 用于从一个数据表更新另一个数据表 显示一个
  • Xamarin - SignalR 挂在连接上

    我正在尝试将我的 Xamarin 应用程序连接到托管在 Azure 上的 SignalR 后端 我遇到的问题是每次我在 HubConnection 上调用 StartAsync 时 它都会挂起客户端并且请求永远不会完成 我尝试通过应用程序进
  • Resharper:IEnumerable 的可能多重枚举

    我正在使用新的 Resharper 版本 6 在我的代码中的几个地方 它给一些文本加了下划线 并警告我可能存在IEnumerable 可能的多重枚举 我理解这意味着什么 并在适当的情况下采纳了建议 但在某些情况下 我不确定这实际上是一个大问
  • 如何在 C# 中获取 Json 数组?

    我有一个像这样的 Json 字符串 我想将它加载到 C 数组中 当我尝试这样做时 我收到异常 我的字符串 customerInformation customerId 123 CustomerName Age 39 Gender Male
  • 无法为 wsdl 文件创建服务引用

    I have wsdl文件和xsd我本地机器上的文件 我想在项目中添加服务引用 我没有网络服务 我只有wsdl file 我收到以下错误 The document was understood but it could not be pro
  • ALTER TABLE ... ADD CONSTRAINT 失败时将事务回滚到保存点

    有没有办法在事务中添加检查约束and如果失败回滚到以前的保存点 而不是回滚整个事务 就我而言 当 ALTER TABLE ADD CONSTRAINT 命令失败时 事务无法回滚到保存点 尝试这样做会引发 InvalidOperationEx
  • 如何在c linux中收听特定接口上的广播?

    我目前可以通过执行以下操作来收听我编写的简单广播服务器 仅广播 hello int fd socket PF INET SOCK DGRAM 0 struct sockaddr in addr memset addr 0 sizeof ad
  • 如何提高环复杂度?

    对于具有大量决策语句 包括 if while for 语句 的方法 循环复杂度会很高 那么我们该如何改进呢 我正在处理一个大项目 我应该减少 CC gt 10 的方法的 CC 并且有很多方法都存在这个问题 下面我将列出一些例如我遇到的问题的

随机推荐

  • Android是如何定义屏幕分辨率的呢?

    在Android中 您可以通过适当命名res目录来为不同的手机属性定义不同的资源 我需要能够支持不同的布局480x800 and 480x854 我想我可以将一组资源存储在layout hdpi v4目录中 另一组资源存储在layout l
  • C:如何比较两个字符串? [复制]

    这个问题在这里已经有答案了 Edit 这是重复的 我已将其标记为重复 参见 问题 为什么 C 语言中 a a 所以我试图根据结构中的字段打印出特定的消息 该字段包含字符串 1 每当我跑步时printf s record fields 2 输
  • 在 Objective-C 方法中引用 BOOL 值

    这是代码的一小部分 interface BOOL isCarryingmallet implementation BOOL isCarryingWeapon return isCarryingMallet int getWeaponDama
  • 在“源/网络”选项卡中复制多个 URL

    是否可以在 Chrome 开发工具的 源 或 网络 选项卡中提取多个资源的 URL 当我想获取某个 URL 时single资源 我可以使用上下文菜单功能来完成复制链接地址 我可以从 网络 选项卡切换到此资源 反之亦然 但如果我需要获取以下
  • 正则表达式 - 从字符串中提取电话号码

    我需要从带有分隔符 波形符 的字符串中提取两个电话号码 棘手的部分是电话号码的格式可能会有所不同 字符串模式保持不变 但电话号码的格式可以是以下三种类型之一 1 4 digit extensions ex 1001 2 10 digit 5
  • Jenkins 持续集成服务器的作业特定 SVN 签出文件夹

    我刚刚设置了一个新的 Jenkins CI 服务器 这是我昨天刚安装的最新版本 我已经完成了几个工作正常的构建 我有几个不同的存储库 它可以从中提取和构建 其中大多数适用于 NET 项目等易于在任何地方构建的项目 因此只需在工作区文件夹中签
  • 带有 GoDaddy 证书的 HTTP SSL - 此服务器的证书链不完整

    一般来说 我从 GoDaddy 获得了 3 个文件 主证书文件 服务器私钥 捆绑文件 通过以下方式在我的 Go 服务器中配置了所有这些文件 cert err tls LoadX509KeyPair myalcoholist pem myal
  • 访问 Struts 2 中的所有用户会话

    我正在使用 JPA 构建 struts 2 应用程序 用户可以多次登录该应用程序 我想 用户能够在网格中查看他的所有会话 并可能突出显示当前会话 并且用户可以选择一个会话并终止它 管理员还应该能够查看所有登录的用户 还可以查看每个登录用户的
  • 如何更改元素的内部文本而不更改其子元素

    我有一个 html 元素 例如 div Change only me div but not me div div 但我只想更改第一个文本并保留子 div 不变 document getElementById el1 innerText c
  • Jquery 自动完成 utf-8 字符区分大小写

    我正在使用 jquery 自动完成插件来搜索一长串名称 它适用于所有拉丁语和英语字符 但对于土耳其语字符我遇到问题 因为搜索将区分大小写 例如 A and a将匹配包含以下内容的所有城市A or a and i不会匹配像这样的城市 stam
  • Flexbox 内的图像高度在 Chrome 中不起作用

    我有一个div using flexbox将其项目居中 里面这个div我有 3 个元素 其中之一是图像 div div div img src alt div div div container1 and container2有自己的身高
  • 尝试遮盖图像周围的圆圈不起作用

    我有一个图像 我试图在周围遮盖一个圆圈 使图像看起来是圆形的 这有点有效 但圆圈在顶部和底部达到一个点 profileImageView layer cornerRadius profileImageView frame size widt
  • Scala 案例类继承

    我有一个基于 Squeryl 的应用程序 我将模型定义为案例类 主要是因为我发现复制方法很方便 我有两个严格相关的模型 字段是相同的 很多操作是共同的 并且要存储在同一个DB表中 But有些行为仅在两种情况之一中有意义 或者在两种情况下都有
  • 使用 mlflow 提供用于评分的自定义 Python 模型

    我使用带有 mlflow 的 ML 软件生成的 Python 代码来读取数据帧 执行一些表操作并输出数据帧 我能够成功运行代码并将新数据帧保存为工件 但是 我无法使用 log model 记录模型 因为它不是我们训练和拟合的 LR 或分类器
  • 使用WindowManager添加View,但可以按回键

    我使用 WindowManager 添加了一个视图 它正确地显示了我想做的事情 但我有一个问题 这就是问题 返回键按下不会影响 Android 组件 如 Activity 我想要的是我添加的视图可以聚焦 可以单击视图的内部按钮 仅当单击视图
  • 有没有办法在批处理文件中拥有多种字体、文本大小等?

    正如标题所说 我不知道是否有任何可能的方法来做这样的事情 批处理文件中的粗体 斜体 字体 文本大小 以及是否可以在同一文件中使用它们的不同值 这可能是不可能的 但如果是的话 有人可以告诉我怎么做吗 注意 我不想讨论属性或其他什么 我的意思是
  • 创建初始数据库时访问被拒绝 - 如何授予正确的访问权限?

    我正在heroku上使用mysql创建一个新项目 他们有一个名为JawsDB的插件 它为我提供了mysql主机 用户名 密码 更新 我也尝试过使用他们的其他 mysql 插件 ClearDB 并且我有完全相同的问题 我可以像这样连接到数据库
  • 无法为 python 安装 pandas

    我正在尝试为 python 安装 pandas 但我不断收到很长的错误消息 所以我尝试了以下方法 卸载并重新安装 python 版本 3 10 0 通过命令提示符导航到目录来安装 pandas C Users 用户名 AppData Loc
  • 将特定字符串值映射到 matplotlib.pyplot.imshow() 中的特定颜色

    我有一个pandas dataframe看起来像这样 columns 0 1 2 3 4 5 A A A A B B B B B C C D D D E E F F 我想用它来绘制pyplot imshow 指定以下颜色图 color di
  • 如何从 datagridview 创建主详细信息

    这段代码插入数据库 private void btnSave Click object sender EventArgs e byte imageBt null FileStream fstream new FileStream this