【问题标题】:C# Listview LabelEditC# Listview 标签编辑
【发布时间】:2017-11-22 12:57:14
【问题描述】:

我想在我的 winform 应用程序中编辑 listview 的一列,我通过设置 LabelEdit = true 并在 KeyDown 事件中编写以下代码来做到这一点

if (e.KeyData == Keys.F2 && lvwColumns.SelectedItems.Count > 0)
                lvwColumns.SelectedItems[0].BeginEdit();

编辑标签后,如何验证输入的值?如果该值为 null 或为空,我想阻止它保存。

【问题讨论】:

    标签: c# winforms listview edit


    【解决方案1】:

    听起来您正在寻找ListView.AfterLabelEdit 事件。

    private void lvwColumns_AfterLabelEdit(object sender, System.Windows.Forms.LabelEditEventArgs e)
    {
       if (string.IsNullOrWhitespace(e.Label))
       {
             e.CancelEdit = true;
             MessageBox.Show ("Please enter a valid value.");
             return;
       }
    }
    

    【讨论】:

      【解决方案2】:

      使用这个AfterLabelEdit MSDN

      表格样本:

          public Form1()
          {
              InitializeComponent();
      
              lvwColumns.LabelEdit = true;
      
              lvwColumns.AfterLabelEdit += lvwColumns_AfterLabelEdit;
          }
      
          private void lvwColumns_AfterLabelEdit(object sender, LabelEditEventArgs e)
          {
              if (String.IsNullOrWhiteSpace(e.Label))
                  e.CancelEdit = true;
          }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-09-17
        相关资源
        最近更新 更多