datagridview绑定后我想让某一格里的某几个字变颜色,怎么实现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了datagridview绑定后我想让某一格里的某几个字变颜色,怎么实现相关的知识,希望对你有一定的参考价值。

比如图上面的第一行款式那一列,我想让“33”变颜色
如果是web的话我知道<span style="color:red">33</span>这样就行了,但是winform的怎么做

参考技术A 指定你想设置字体颜色的单元格,为其指定样式追问

不是整个单元格

追答

晕,找到那个单元格,不就可以设置其单元格的字体颜色了吗

参考技术B DataGridViewCellStyle sty=new DataGridViewCellStyle();
sty.ForeColor=Color.Red;
dataGridView1.Rows[0].Cells[2].DefaultNewRowValue = sty;

datagridview的单击事件

我在from里加了一个datagridview控件绑定了SQL数据库里的一个表
我想单击datagridview里的某一行的时候就把这一行的数据显示在几个textBox控件里,请问怎么实现?
我在datagridview控件的单击事件里写了怎么有的时候有反应,有的时候没反应啊,就连在里面写 MessageBox.Show("sdfv")都是有的时候有反应,有的时候没有,并且没有什么规律
那位大侠解决一下了啦

参考技术A 把datagridview换成listview

下面几个方法换成你需要实现数据的TxtBox因为我的代码是传的窗体,你换成textbox
public selectForm(EnterGoodsForm ef)

InitializeComponent();
_dv = ef.dataGridView1;


public selectForm(UntreadForm uf)

InitializeComponent();
_dv = uf.dataGridView1;


public selectForm(AddtransferInfoForm uf)

InitializeComponent();
_dv = uf.dataGridView1;


public selectForm(AllmoneyPickgoodsForm uf)

InitializeComponent();
_dv = uf.dataGridView1;


public selectForm(returnGoodsForm uf)

InitializeComponent();
_dv = uf.dataGridView;


public selectForm(NotAllmoneyPickgoodsForm napf)

InitializeComponent();
_dv = napf.dataGridInInfo;


这里开始是双击事件
/// <summary>
/// 双击ListView
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void listView1_DoubleClick(object sender, EventArgs e)


SetListInfo();



/// <summary>
/// 将用户选择的商品信息列显示到DataGridView
/// </summary>
public void SetListInfo()

listView1.MultiSelect = false;
try

if (listView1.SelectedIndices.Count > 0)

string str0 = null, str1 = null, str2 = null, str3 = null, str4 = null, str5 = null;

//获取所选ListView的行信息
foreach (int i in this.listView1.SelectedIndices)

str0 = this.listView1.Items[i].SubItems[0].Text.ToString();
str1 = this.listView1.Items[i].SubItems[1].Text.ToString();
str2 = this.listView1.Items[i].SubItems[2].Text.ToString();
str3 = this.listView1.Items[i].SubItems[3].Text.ToString();
str4 = this.listView1.Items[i].SubItems[4].Text.ToString();
str5 = this.listView1.Items[i].SubItems[5].Text.ToString();



if (CheckValue(str0) == true)

_count = (int)_dv.Tag;
_dv.Rows[_count].Cells[0].Value = str0;
_dv.Rows[_count].Cells[1].Value = str1;
_dv.Rows[_count].Cells[2].Value = str2;
_dv.Rows[_count].Cells[3].Value = str3;
_dv.Rows[_count].Cells[4].Value = str4;
_dv.Rows[_count].Cells[5].Value = str5;
_dv.Rows[_count].Cells[6].Value = "未填写";

_dv.Rows[_count].Cells[7].Value = "未填写";

_dv.Tag = _count + 1;

//当DataGridView显示的行数达到当前最大行数时,行数自增1
if ((int)_dv.Tag > 6)

_dv.Rows.Add(1);

this.Dispose();

else

MessageBox.Show("您已经选择过此列商品信息,请确认后重新选择!", "提示^^", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);


else

MessageBox.Show("请选择一行商品信息列后再单击按钮!", "提示^^", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);



catch (Exception)

MessageBox.Show("请确认后再单击按钮!", "提示^^", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);



照着改吧``我正在写这方面的一个进销存
参考技术B 试下写在 OnRowDataBound="boundData"这个事件,后台函数为

protected void boundData(object sender, GridViewRowEventArgs e)

//代码
本回答被提问者采纳
参考技术C 用datagrideview麻烦的话,你就用listbox吧,这个以用就灵,试试,呵呵,学习愉快哦 参考技术D 没有试过,为什么不加个编辑按钮呢?
或者command的编辑,取消,更新。
第5个回答  2008-06-10 转换为模板

以上是关于datagridview绑定后我想让某一格里的某几个字变颜色,怎么实现的主要内容,如果未能解决你的问题,请参考以下文章

在winform中,如何将DataGridView中某几列的数值设置成文字,及显示文字,后台传递的是数字。

winform中怎么读取DataGridview中特定的某一列并赋值给一个数组?

数据库 C# datagridview可不可以让某一列禁止被更改

winform datagridview 设置交叉色后,再改变某列背景色问题

SQL数据库中 如何让某一列的值自动累加1?

C#怎么清空datagridview 里显示的数据 而不把内存中tablel里的数据清空