簡體   English   中英

帶有單選按鈕的GridView列

[英]GridView with radio button Column

我試圖做一個帶有單選按鈕作為第一列的gridView。

我正在使用

        DevExpress.XtraEditors.Repository.RepositoryItemCheckEdit m_repositoryItemCheckEdit

作為第一列的存儲庫編輯。

特性:

          m_repositoryItemCheckEdit.CheckStyle = DevExpress.XtraEditors.Controls.CheckStyles.Radio;

作為第一欄的編輯器。

我正在嘗試創建一個普通的單選按鈕列表:1)至少選擇了一個選項2)最多選擇了一個選項

對於第二條規則,我使用CheckedChange事件來獲取行為:

     void m_repositoryItemCheckEdit_CheckedChanged(object sender, System.EventArgs e)
    {
        var selectedRow = m_gridView.GetSelectedRows()[0];

        for (int i = 0; i < m_gridView.RowCount; i++)
        {
            //change the checked state to false for all rows except the selected one
            if (i != selectedRow)
            {
                MyRecord o = m_gridView.GetRow(i) as MyRecord;
                o.Checked = false;
            }
        }
        m_gridView.RefreshData();

    }

我不知道如何獲得第一條規則。

你能幫我嗎?

編輯:

MyRecord是:

      public class MyRecord
{
    public bool Checked { get; set; }
    public string Name { get; set; }
    public MyRecord(bool i_checked, string name)
    {
        Checked = i_checked;
        Name = name;
    }
}

要實現第一條規則,請處理GridView.ShowingEditor事件。 此事件使您可以根據仲裁規則禁用某個單元。 在事件處理程序中,驗證GridView.FocusedColumn等於您的復選框列。 然后瀏覽各行,如果焦點所在的行是唯一選中的行,則不要通過將e.Cancel屬性設置為true來顯示編輯器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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