在DataGridView中删除行 C#
我试图循环穿过dataGridView1,然后删除无法满足以下条件的行: foreach (DataGridViewRow row in dataGridView1.Rows) { if (!(Convert.ToDateTime(row.Cells[7].Value) - DateTime.Today).Days
4 2024-04-26
编程技术问答社区
如何检查多维数组行是否包含非零值
只是关于C#中的多维阵列的一个简短问题. 如何检查多维数组的一行是否包含非零值? 在MATLAB中,"任何" - 命令完全可以做我需要的. 最后,我需要将请求放在一段时间的情况下.均值在matlab中:while(any(array [1,2,:])) - >>这是指:(任何属于行的人零零)... 我已经尝试了array.exists()或array.find(),但似乎仅适用于一维数组. 谢谢 解决方案 您有几个选项 myMultiArray.Any(row => row.Contains(Something)); 或作为Sriram Sakthivel建议 foreach(var row in myMultiArray) if(row.Contains(Something) //Found it! foreach(var row in myMultiArray) if(row.IndexOf(Somet
8 2024-04-26
编程技术问答社区
如果同一日期时间已经在一行中,如何在dataGridView中覆盖一行?
这是到目前为止我按钮上的代码: DateTime thisDay = DateTime.Today; dataGridView1.Rows.Add(thisDay.ToString("d")); 我如何让它检查"今天"日期是否已经写成一排并覆盖它(当然,这里没有多大意义,但是我会添加更多的单元格,而在这种情况下也应该覆盖)与同一日期进行新的行? 谢谢 解决方案 您可以这样尝试: string thisDay = DateTime.Today.ToString("d"); var duplicateRow = (from DataGridViewRow row in dataGridView1.Rows where (string)row.Cells["columnName"].Value == thisDay select row).FirstOrDefault(); if (d
6 2024-04-26
编程技术问答社区
如何在wpf数据表格中绑定行头?
在我的项目中,我想要datagrid行标头值,例如Outlook Calendar.假设是9.00、9.30、10.00、10.30 ....但是它没有修复,它可能会有所不同......9.00pm,10.00 pm. 我正在使用两个文本块,但我的形状也几乎相同.但是我的值是固定的,即1-00、1-00,1-00、1-00,1-00、1-00,.................................................................................................................................................................. 我的代码 -
6 2024-04-25
编程技术问答社区
如何在WPF中为DataGrid绑定字段?
我正在使用WPF编程UI一个月.所以我在这个世界上是新手.这是我在这里的第一个帖子,我的母语不是英语.因此,如果我的写作有任何错误,对此感到抱歉. 我对WPF有问题,我无法找到解决方案.我正在尝试在WPF中制作完全可自定义的数据,并且我不希望DataGrid自动创建列或行. 我有一个名为Sinif_Tutucu的ObservableCollection(在我的母语语言中含义 class_holder ),可以举行课程.这些类具有相同的字段和属性,但是它们的值不同.我正在根据这些类中的字段和属性一一创建列.之后,我将列添加到DataGrid. 然后,我将行添加到ItemsSource之类的行. DataGrid_1.ItemsSource = Sinif_Tutucu; 这仅填充数据杂志中的属性,而由字段组成的列仍然为空.我已经搜索了此问题,我想没有办法将字段绑定到datagrid. Sinif_Tutucu中的类有数千个字段.因此,我无法将字段转换为属性,也不想从头
6 2024-04-24
编程技术问答社区
DataGridView.Rows.RemoveAt(int index)在windows窗体中不删除行?
int i = dataGridView1.CurrentRow.Index; dataGridView1.Rows.RemoveAt(i); 上面删除当前选择的行的代码(仅允许选择1行),但我仍然可以看到该行保留在DataGridView中.我错过了更新还是无效? ps:datagridview1是数据限制的. ps2:我使用linq查询来绑定数据,我不想再次查询仅删除一行,我认为它会减慢性能. 解决方案 我认为该解决方案取决于您如何绑定数据.如果您要绑定bindingList,则removeat()方法将为您删除所有处理所有内容,而您不必刷新DataGridView. 尝试下面,然后查看... dataGridView1.Refresh(); 或重新绑定数据并查看.. dataGridView1.DataSource = myDataSource; dataGridView1.Refresh(); 其他解决方案 从数据源中删除项目,
10 2024-04-23
编程技术问答社区
DataGridView.Rows.RemoveAt(int index)在windows窗体中不删除行?
int i = dataGridView1.CurrentRow.Index; dataGridView1.Rows.RemoveAt(i); 上面删除当前选择的行的代码(仅允许选择1行),但我仍然可以看到该行保留在DataGridView中.我错过了更新还是无效? ps:datagridview1是数据限制的. ps2:我使用linq查询来绑定数据,我不想再次查询仅删除一行,我认为它会减慢性能. 解决方案 我认为该解决方案取决于您如何绑定数据.如果您要绑定bindingList,则removeat()方法将为您删除所有处理所有内容,而您不必刷新DataGridView. 尝试下面,然后查看... dataGridView1.Refresh(); 或重新绑定数据并查看.. dataGridView1.DataSource = myDataSource; dataGridView1.Refresh(); 其他解决方案 从数据源中删除项目,
8 2024-04-23
编程技术问答社区
用于添加新行的数据网格视图按键事件
我有一个具有6列的dataGridView,我想在列的最后一个单元格上按" tab"按钮(仅)时,我想在列的最后一个单元格上添加一个新的行,我使用代码bellow来防止每次编写时添加行单元格值 dataGridView1.AllowUserToAddRows = false; dataGridView1.Rows.Add(); 我已经在单元格上使用了按键事件(最后一个单元格),但它不起作用, 最后一个单元格仅读取 private void dataGridView1_KeyPress(object sender, KeyPressEventArgs e) { if (dataGridView1.CurrentCell.ColumnIndex == 5) { if (e.KeyChar == (char)Keys.Tab) { dataGridView1.Rows.Add(); }
8 2024-04-23
编程技术问答社区
通过DataGridView使用热键选择上一行和下一行的正确方法
.NET 4.0 C#开发的新事物,并有一个快速的问题.我正在使用基本的Windows表单应用程序,其中我正在使用DataGridView查看存储在访问数据库中的数据. 我想使用alt+n选择下一个行,然后选择alt+p来选择下一个行(如果可能的话,包装,或者如果已经在行列表的顶部或底部的顶部,则根本不移动). 我通过互联网对此进行了相当多的了解,但我只是看不到如何完成此操作,也没有通过控件的属性看到选项. : -/ 任何人都可以提供一个可以在.NET 4.0 C#开发环境中起作用的解决方案? 解决方案 我最终使用以下事件代码作为"下一个"和"上一个"按钮,用于使用" alt+n"和" alt+n"和" alt+p"热键.感谢"查克·威尔伯"对此解决方案的贡献. private void btnNext_Click(object sender, EventArgs e) { //Get number of records
8 2024-04-22
编程技术问答社区
WPF数据表格强制单线行
我正在研究WPF的数据杂志,我遇到了一个问题. 在我的datagridtextcolumn中添加多行字符串时,该行的高度扩展,以适合整个文本.我希望行始终保持恒定,即仅显示第一行. 有人知道解决方案吗?似乎是一项足够简单的任务,但是我找不到这个主题上的任何值得. 这是我的XAML:
2 2024-04-20
编程技术问答社区
如何在 C# 中按行对锯齿数组排序?
我有2D锯齿状的数组.我想通过任何行进行排序. 我已经搜索并找到了通过列进行排序的代码 private static void Sort(T[][] data, int col) { Comparer comparer = Comparer.Default; Array.Sort(data, (x,y) => comparer.Compare(x[col],y[col])); } 我可以对其进行调整以按任何行? 任何帮助都将不胜感激. 我的锯齿状阵列的样本(添加) using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication3 { class Program { static void Main(strin
4 2024-04-19
编程技术问答社区
在asp.net c#上改变gridview上的行或记录的颜色?
我正在为约会书做一张桌子...我需要做以下内容... 显示所有尚未参加的约会(我有一个按钮标记他们参加)... 如果没有参加约会,并且日期是今天的日期,则该行必须以红色(文本字体颜色)出现... 所以我的问题是,如何更改特定行的颜色,如果我必须在查询中得到某些内容才能指定这一行必须具有不同的颜色? 谢谢
8 2024-04-16
编程技术问答社区
ItextSharp,单元格的数量不能被行的长度所分割
我目前正在从事一个C#项目,这需要我制作一个动态表. (程序的用户可以决定一行包含多少个单元格.) 我已经想出了那一点,但是问题出了.例如,用户想要以3行显示的数据,但需要显示5件事,只会显示前3个,最后2个消失. 我如何做到这一点,以便如果不能将单元的数量除以行的长度(例如4个单元格3或5个单元,排为2个,则添加一个空单元,以便添加一个空单元也显示了最后一行(或其他任何其他修复程序显示了最后一行,其中小区不足以填充该行)? 示例代码: PdfPTable card = new PdfPTable(3); card.AddCell("Row 1 cell 1"); card.AddCell("Row 1 cell 2"); card.AddCell("Row 1 cell 3"); card.AddCell("Row 2 cell 1"); card.AddCell(
8 2024-04-16
编程技术问答社区
GridView在c#中添加第二和第三条标题行
我有一个 asp.net c#gridview ,其列看起来像这样: | Foo | Bar | Total1 | Total2 | Total3 | 是否可以在看起来像这样的行上创建标头? | General | Totals | | | A | B | C | | Foo | Bar | 1 | 2 | 3 | 我尝试了 rowcreated方法,但我被停止了: | General | Totals | | Foo | Bar | 1 | 2 | 3 | 我的代码下面. 你能帮我吗? 预先感谢您的任何帮助,非常感谢. protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataContro
2 2024-04-16
编程技术问答社区
从两个imentsional数组中删除重复的行
假设我有二维数组,代表简单的矩阵 int[,] matrix= new int[,] { { 1, 2 }, { 3, 4 }, { 1, 2 }, { 7, 8 } }; 看起来像 1 2 3 4 1 2 7 8 有什么方法可以使用linq删除重复行并使数组看起来像这样? 1 2 3 4 7 8 解决方案 这不是真正的linq,但是您可以定义一些辅助方法,就好像它们是Linq方法一样. 更简单的算法应为: 转换为列表 使用自定义比较应用 重建另一个数组 这看起来像这样: public static class MyExtensions { public static IEnumerable> ToEnumerableOfEnumerable(this T[,] array) { int rowCount = array.GetLength(0); int c
10 2024-04-15
编程技术问答社区
需要在SQL表的行中一个一个地迭代(表太大了,无法使用adapter.Fill)。
我很容易阅读像这样的小型SQL Server 2005表: string cmdText = "select * from myTable"; SqlDataAdapter adapter = new SqlDataAdapter(cmdText, connection); DataTable table = new DataTable(); adapter.Fill(table); 不幸的是,此方法似乎将整个表加载到内存中,这根本无法与我合作的巨型表配合使用. 我希望一次迭代一行,这样一排才需要一次记忆.沿着: 的线 foreach (DataRow row in rowIteratorObject) { // do something using the row // current row goes out of scope and is no longer in memory } 类似于您可以使用StreamReader一次处理文本文件一行的方式
6 2024-04-15
编程技术问答社区
改变WPF数据表格行的颜色
我有一个wpf datagrid,该datagrid填充了一个观察力. 现在,我想根据程序启动时的行内容以及在运行时发生变化的情况下为行着色. System.Windows.Controls.DataGrid areaDataGrid = ...; ObservableCollection areas; //adding items to areas collection areaDataGrid.ItemsSource = areas; areaDataGrid.Rows
12 2024-04-15
编程技术问答社区
如何以编程方式选择WPF DataGrid中的某一行或某一单元格?
在Winform DataGridView中,它会在初始化时自动选择第一行.当我试图关闭该功能时,这让我发疯了.转到WPF DataGrid,Microsoft似乎已决定关闭此功能,这是我认为的一件好事.但是,我很难现在启用此功能.对于某些datagrid,我希望通过数据绑定填充网格后自动选择第一行.互联网上有一些建议,但我无法做到这一点.我希望这里有更好的运气. 解决方案 set IsSynchronizedWithCurrentItem = "true". 编辑: 要解决您的评论,我认为您的数据杂志的选择nit设置为"单元格",是吗?好的,我不确定这是否是最好的解决方案,但是您可以做的一件事是处理数据杂志的加载事件,并在代码范围内手动设置所选单元格.因此,您将有类似的东西:
6 2024-04-15
编程技术问答社区
右键选择dataGridView中的行
我需要在显示ContextMenu之前用右键单击DataGridView中的一行,因为ContextMenu是行依赖的. . 我已经尝试过: if (e.Button == MouseButtons.Right) { var hti = dataGrid.HitTest(e.X, e.Y); dataGrid.ClearSelection(); dataGrid.Rows[hti.RowIndex].Selected = true; } 或: private void dataGrid_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e) { if (e.Button == MouseButtons.Right) { dataGrid.Rows[e.RowIndex].Selected = true; data
12 2024-04-15
编程技术问答社区
C# 遍历DataGridView并改变行的颜色
我有一个由多个行和列组成的datagridview. 我想迭代每一行,并检查特定列的内容. 如果该列包含"否"一词,我想将整个行的预彩色更改为红色. 到目前为止,这是对某些代码的尝试,但它肯定无法正常工作,开始怀疑我是否需要在每个单元格上迭代? 代码: foreach (DataGridViewRow dgvr in dataGridView1.Rows) { if (dgvr.Cells["FollowedUp"].Value.ToString() == ("No")) { dgvr.DefaultCellStyle.ForeColor = Color.Red; } } 解决方案 public void ColourChange() { DataGridViewCellStyle RedCellStyle =
6 2024-04-14
编程技术问答社区