簡體   English   中英

BrightIdeasSoftware.FastObjectListView.CellEditFinished e.Cancel 不起作用

[英]BrightIdeasSoftware.FastObjectListView.CellEditFinished e.Cancel not working

我有一個列表視圖,用戶可以在其中雙擊單元格進行編輯。 我正在驗證用戶輸入,如果不正確,我不希望實施更改。

問題是 e.Cancel 沒有取消活動嗎? 屬性中是否還有任何需要設置的內容?

private void HoursListView_CellEditFinished(object sender, CellEditEventArgs e)
    {
        string originalValue = e.Value.ToString();
        string newValue = e.NewValue.ToString();

        string[] timeSplit = e.NewValue.ToString().Split(':');

        if (!Regex.IsMatch(newValue, @"^\d{2}:\d{2}:\d{2}"))
        {
            e.Cancel = true;
            MessageBox.Show("Incorrect hours format!", "Edit Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
        else if (Convert.ToDouble(timeSplit[0]) > 24)
        {
            e.Cancel = true;
            MessageBox.Show("Hours cannot be over 24!", "Edit Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
        else if (Convert.ToDouble(timeSplit[1]) > 59)
        {
            e.Cancel = true;
            MessageBox.Show("Minutes value cannot be over 59!", "Edit Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
        else if (Convert.ToDouble(timeSplit[2]) > 59)
        {
            e.Cancel = true;
            MessageBox.Show("Seconds value cannot be over 59!", "Edit Error", MessageBoxButtons.OK, MessageBoxIcon.Error);                
        }
        else
        {
            UpdateTotalHoursForTheWeek();
        }
    }

排序...原來你需要使用事件 CellEditFinished 而不是 CellEditFinished!

暫無
暫無

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

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