c# 获取sql指定表的列名,及获取datagridview的所有列名,并进行对比。

c# 获取sql指定表的列名,及获取datagridview的所有列名,并进行对比。,第1张

MS SqlServer:

SELECT syscolumnsname

FROM syscolumns, systypes 

WHERE syscolumnsxusertype = systypesxusertype 

AND syscolumnsid = object_id('表名')--需要有权限如果权限不足可考虑使用下面的SQL

Select  from 表名 where 1<>1

            foreach (DataControlField d in GridView1Columns)

            {

                if (d as DataControlField != null)

                { 

                    //((BoundField)d)DataField

                }

                else

                {

                    //非数据源绑定列

                }

                //剩下代码自已比较

            }

通常会设置的DataGridView的属性

AllowUserToAddRows False

指示是否向用户显示用于添加行的选项 列标题下面的一行空行将消失 一般让其消失

AllowUserToDeleteRows False

指示是否允许用户从DataGridView删除行 一般不允许

AllowUserToOrderColumns False

指示是否启用手动列重新放置 一般不允许

AllowUserToResizeColumns True

指示用户是否可以调整列的大小 一般允许

AllowUserToResizeRows False

指示用户是否可以调整行的大小 一般不允许

AutoSizeColumnsMode Fill

确定可见列的自动调整大小模式

BorderStyle None/FixedSingle/Fixed D

DataGridView的边框样式

GridColor 任意

分隔DataGridView单元格的网格线的颜色

MultiSelect False

指示用户一次是否可以选择DataGridView的多个单元格 行或列

ReadOnly True

指示用户是否可以编辑DataGridView控件的单元格

RowHeadersVisible False

指示是否显示包含行标题的列

SelectionMode FullRowSelected

指示如何选择DataGridView的单元格

如何获取用户所选的那个单元格中的内容?

string oop = this DataGridView SelectedRows[ ] Cells[ ] Value ToString() Trim();

上面语句的意思是将用户所选的第一行中第一个单元格中的值转换为String类型并去处两边的空格赋值给oop字符串

如何获取用户所选的那行中我想得到的单元格中的内容?

string loginID = this DataGridView Rows[e RowIndex] Cells[ LoginID ] Value ToString() Trim();

e RowIndex 获取触发此单击事件时用户所选行的下标

上面的语句写在DataGridView控件的单击事件中 双击事件也可以 LoginID是DataGridView控件中一列的列名 作用就是获取用户选中那一行的表示LoginID的内容

如何确定用户是否选择了DataGridView中的一行数据 而没有点到别处呢?

if (this DataGridView SelectedRows Count != ) {}

如何将用户所选的那行数据整体获取出来?

前提是DataGridView的数据源是一个实体类集合 这样DataGridView中的每行数据才都是一个实体类对象 将DataGridView中的一行数据整体获取出来才有意义

Student student = this DataGridView SelectedRows[ ] DataBoundItem as Student;

一般上面的语句都写在DataGridView的单击或双击事件中

弄不好在DataGridView中会显示多余的列 如何避免这种问题呢?

在DataGridView控件的Load事件的第一行写上这样的代码

private void frmMain_Load(object sender EventArgs e) {

this dataGridView AutoGenerateColumns = false;  //让它不自己产生多余的列

}

lishixinzhi/Article/program/net/201311/11403

以上就是关于c# 获取sql指定表的列名,及获取datagridview的所有列名,并进行对比。全部的内容,包括:c# 获取sql指定表的列名,及获取datagridview的所有列名,并进行对比。、DataGridView *** 作技巧、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9641980.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存