簡體   English   中英

我可以在未綁定的DataGridView中設置最大行數

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM