怎样获取DataGrid的第一行某一列的值

怎样获取DataGrid的第一行某一列的值,第1张

1、给DataGrid 设置ID

<mx:DataGrid id="dataGridView1">

2、设定绑定事件

[

Bindable]private var dataArr:ArrayCollection=new ArrayCollection([type: "突发事件", name: "车站火灾预案(运营时间)", time: "2011-5-1", dep: "北京地铁运营公司", zhuangtai: "审批中"},

3、执行下列内容

var OBJ:Object=thisdataGridView1selectedItem;

var ss:String=OBJname//获取点击行的预案名称值

前台代码:

<Grid >

<GridRowDefinitions>

<RowDefinition/>

<RowDefinition Height="25"/>

</GridRowDefinitions>

<DataGrid Name="dg" AutoGenerateColumns="True" RowHeaderWidth="0" SelectedCellsChanged="dg_SelectedCellsChanged" SelectionUnit="Cell"></DataGrid>

<TextBlock GridRow="1" Name="txt"/>

</Grid>

后台代码:

public partial class BaiduKnows : Window

{

public BaiduKnows()

{

InitializeComponent();

List<People> peoplelist = new List<People>();

peoplelistAdd(new People() { age = 10, name = "linda" });

peoplelistAdd(new People() { age = 11, name = "tom" });

peoplelistAdd(new People() { age = 12, name = "peter" });

peoplelistAdd(new People() { age = 13, name = "mary" });

dgItemsSource = peoplelist;

}

class People

{

public int age { get; set; }

public string name { get; set; }

}

private void dg_SelectedCellsChanged(object sender, SelectedCellsChangedEventArgs e)

{

DataGrid dg = sender as DataGrid;

People item = dgSelectedCells[0]Item as People;

string colhead = dgSelectedCells[0]ColumnHeaderToString();

switch (colhead)

{

case "age" : txtText = itemageToString();

break;

case "name": txtText = itemnameToString();

break;

}

}

}

你好,软糖来回答把。

代码已通过测试。

一、获取第一个匹配行

public void 查找特定行() {

    // 用 Cast 将 dataGridView1 的所有行转化为 List<DataGridViewRow>

    var list = dataGridView1RowsCast<DataGridViewRow>();

    // 用 First 返回第一个匹配项符合条件xCells[0]Value 等于 灭火器的 Row

    var firstmatch = listFirst(x => xCells[3]Value != null 

    && xCells[3]ValueToString() == "灭火器"); 

    //firstmatchIndex即为索引,使其高亮显示

        dataGridView1Rows[firstmatchIndex]

        DefaultCellStyleBackColor = ColorYellow;

}

二、获取所有匹配行

// 用 Cast 将 dataGridView 的所有行转化为 List<DataGridViewRow>

var list = dataGridView1RowsCast<DataGridViewRow>();

// 用 Where 返回所有匹配项

var allmatch = listWhere(x => xCells[3]Value != null && xCells[3]ValueToString() == "灭火器");

//RowIndex即为索引,使其高亮显示

foreach (var item in allmatch) {

    dataGridView1Rows[itemIndex]

    DefaultCellStyleBackColor = ColorYellow;

}

对软糖的答案满意吗,请及时采纳,谢谢了。

解决方法一:遍历datagridview所有行和列 匹配你输入的值

dataGridView1Rows[索引]获取行

dataGridView1Rows[索引]Cells[索引]获取该行的某一项,然后记录下rows的索引 和cells的索引就是你要的行号和列号

解决方法二:为该datagridview添加CellClick这个事件(点击项触发的事件)

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)

{

int i = eRowIndex; //是行号

int j = eColumnIndex //是列号

}

在Datagrid中双击某行,可以准确取得当前行某个字段的值(其中一个单元格:也就是对应你数据库的这个字段,你怎么设置这一列是哪个字段就是第几个字段)。要显示这个值时,使用:text1text=Adodc1Recordsetfields("你的字段名或以0为起始的序号")

我帮你写了一段代码,你试试

// dg = dataGrid

var index = dgSelectedIndex;

if (index == -1) // 判断是否选中了某一行

{

    if (dgSelectedCellsCount > 0)

    {

        // 获取综合信息,包括行、列索引

        // DataGridRow 对象

        // DataGridCell 数据模板中的首元素

        // 获取绑定到 DataGridRow 上的数据对象

        var infos = dgSelectedCellsSelect(s => new

        {

            ColumnIndex = sColumnDisplayIndex,

            RowIndex = dgItemsIndexOf(sItem),

            DataItem = sItem, // 该行所绑定的数据对象

            // 根据 sItem 获取 DataGridRow

            DataGridRow = dgItemContainerGeneratorContainerFromItem(sItem),

            // 根据 sItem 获取单元格模板的首个元素

            VisulRoot = sColumnGetCellContent(sItem),

        });

        foreach (var info in infos)

        {

            ConsoleWriteLine("{0}: ({1},{2})",

                infoVisulRoot, infoRowIndex, infoColumnIndex);

        }

    }

    // 获取 DataGridRow 绑定的数据对象

    var items = dgSelectedCellsSelect(s => sItem)Distinct();

}

else

{

    / SelectedIndex != -1 /

}

getRowIndex 返回指定行的索引号,该行的参数可以是一行记录或一个ID字段值(API中的说法)

所以你返回的是这个行的索引号,要想显示所选行的id值,直接alert(rows[0]id)不行吗

以上就是关于怎样获取DataGrid的第一行某一列的值全部的内容,包括:怎样获取DataGrid的第一行某一列的值、datagrid 控件,如何点击一次某单元格,即可获取该单元格的内容、c#如何获取dataGridView中特定行的行数。 比如 资产名称=灭火器 的行数.等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/web/9291279.html

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

发表评论

登录后才能评论

评论列表(0条)

保存