我有DataGridView6 列;我希望第一列显示一周中的几天。第二列应显示每天的时间表。但我希望它们以垂直顺序显示,而不是以水平方式显示。但我不知道该怎么做。
我有这样的:
我想要这样的:
我正在开发一个 .NET Windows 窗体应用程序。坦率地说,我绝对是 .NET windows 窗体的初学者。但我是 ASP.NET 开发人员。我正在做我的第一个 Windows 窗体项目。现在我在使用实体框架将数据绑定到 DataGridView 时遇到问题。我想添加两个自定义按钮列。但我不知道该怎么做,因为我绝对是 Windows 窗体控件的初学者。
我的代码如下:
RestaurantContext context = new RestaurantContext();
var dbFoods = context.Foods;
List<FoodMenuRow> rows = new List<FoodMenuRow>();
foreach(var food in dbFoods)
{
FoodMenuRow row = new FoodMenuRow
{
FoodId = food.Id,
FoodEnName = food.EnName,
FoodMmName = food.MmName,
IsAvailable = food.Available
};
rows.Add(row);
}
dataGridFoodMenu.DataSource = rows;
Run Code Online (Sandbox Code Playgroud)
如您所见,我从数据库加载数据,然后将值分配给对象 FoodMenuRow 以绑定数据。因为我不想直接绑定到EF的Entity。
这是 FoodMenuRow 类的定义
public class FoodMenuRow
{
public int FoodId { get; set; }
public string FoodMmName { …Run Code Online (Sandbox Code Playgroud) 我有DataGridView几个细胞。如何验证所有单元格并突出显示无效单元格?
填充单元格后应进行验证。
我尝试使用这种方式:
void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
}
Run Code Online (Sandbox Code Playgroud)
但是我需要为每个字段(列)设置一些验证规则。例如,检查数字或字符串。
最初我datagridview看起来像下面
ID Name City Action
------ ------ ---- ------
1 Mitch Kolkata Edit
2 Simon Delhi Edit
3 Poly Madras Edit
Run Code Online (Sandbox Code Playgroud)
所有数据都将是只读格式。所以用户不能改变,但是当用户点击编辑按钮时,一个文本框将被放置在名称列中,一个城市dropdown将被放置在城市列上的一行,其编辑按钮将被用户单击。
当用户单击编辑按钮时,编辑按钮文本将更改为保存,当用户单击保存按钮时,保存按钮文本将更改为编辑。所以指导我如何在使用datagridview. 谢谢
下面代码的目的是总结datagridview在订单系统中无限添加的所有索引3,并将其显示在名为的标签中Price.
private void Add_Click(object sender, EventArgs e)
{
dgvSelected.Rows.Add(dgvItem.SelectedCells[0].Value.ToString(),
dgvItem.SelectedCells[1].Value.ToString(),
dgvItem.SelectedCells[2].Value.ToString(),
dgvItem.SelectedCells[3].Value.ToString());
for (int i = 0; i < dgvSelected.Rows.Count; i++)
{
price = price + int.Parse(dgvSelected.Rows[i].Cells[3].Value.ToString());
Price.Text = price.ToString();
}
}
Run Code Online (Sandbox Code Playgroud)
问题是它一直在说:
"你调用的对象是空的."
...作为以下行的错误:
price = price + int.Parse(dgvSelected.Rows[i].Cells[3].Value.ToString());
Run Code Online (Sandbox Code Playgroud)
表中应该没有null,但错误仍然是坚持存在null.表中有多行,但它可以读取的唯一行是第1行.当涉及到具有值的第二行时,它会说出有关的错误.