[英]Can I set the Max number of rows in unbound DataGridView
我發現很難相信以前沒有問過這個問題,但它看起來並不像以前一樣,我的谷歌搜索一切都是徒勞的。
我可以設置DataGridView允許用戶添加的最大行數嗎? (就像添加第10行后,它將不再顯示“新行”行?)。
沒有直接屬性可以執行此操作,但您應該能夠使用AllowUserToAddRows
屬性和UserAddedRow
事件的組合輕松完成此操作。
一般的想法是添加一個事件處理程序來檢查最大允許的行數,然后設置AllowUserToAddRows = false
public partial class frmGridWithRowLimit : Form
{
public Int32 MaxRows { get; set; }
public frmGridWithRowLimit()
{
MaxRows = 10;
InitializeComponent();
dgRowLimit.UserAddedRow += dgRowLimit_RowCountChanged;
dgRowLimit.UserDeletedRow += dgRowLimit_RowCountChanged;
}
private void dgRowLimit_RowCountChanged(object sender, EventArgs e)
{
CheckRowCount();
}
private void CheckRowCount()
{
if (dgRowLimit.Rows != null && dgRowLimit.Rows.Count > MaxRows)
{
dgRowLimit.AllowUserToAddRows = false;
}
else if (!dgRowLimit.AllowUserToAddRows)
{
dgRowLimit.AllowUserToAddRows = true;
}
}
}
您還希望在用戶刪除行時進行處理,以確保允許他們再次添加行。
希望這可以幫助
干杯,喬希
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.