小编Hil*_*jhi的帖子

C#DateTimePicker DataBinding Parse事件无法正常工作

我有一个datetimepicker,我在数据集中绑定了可空的日期/时间列.我成功地将Format事件应用于null而不是null对象值.但是,当我取消选中dtp控件时,它不会在数据集中设置为null.这是我的代码:

dtpBirthdate.DataBindings.Add(new Binding("Value", bsStaff, "birthDate", true));
dtpBirthdate.DataBindings["Value"].Format += new ConvertEventHandler(dtpFormat);
dtpBirthdate.DataBindings["Value"].Parse += new ConvertEventHandler(dtpParse);
Run Code Online (Sandbox Code Playgroud)

格式和解析事件:

private void dtpFormat(object sender, ConvertEventArgs e)
{
      Binding b = sender as Binding;
      if(b != null)
      {
           DateTimePicker dtp = (b.Control as DateTimePicker);
           if(dtp != null)
           {
                if (e.Value == null || e.Value == DBNull.Value)
                {
                    dtp.Checked = false;
                    dtp.CustomFormat = " ";
                    e.Value = false;
                }
                else
                {
                    dtp.Checked = true;
                    dtp.CustomFormat = "dd-MMM-yyyy";
                    dtp.Value = (DateTime) e.Value;
                }
            }
        }
    }

    private void …
Run Code Online (Sandbox Code Playgroud)

c# binding parsing nullable datetimepicker

8
推荐指数
1
解决办法
915
查看次数

C#绑定datagridviewcomboboxcolumn列出显示,格式化,首选大小错误

我有一个表支付,它有一个名为payMonth的可归零整数列.我有以下课程和清单:

public class months
{
     public int payMonth { get; set; }
     public string monthName { get; set; }
}

lstMonths = new List<months> {
   ,new months() { payMonth = 1, monthName = "jan" }
   ,new months() { payMonth = 2, monthName = "feb" }
   ,new months() { payMonth = 3, monthName = "mar" }
   ,new months() { payMonth = 4, monthName = "apr" }
   ,new months() { payMonth = 5, monthName = "may" }
   ,new months() { payMonth = …
Run Code Online (Sandbox Code Playgroud)

c# binding list datacolumn

8
推荐指数
1
解决办法
337
查看次数

标签 统计

binding ×2

c# ×2

datacolumn ×1

datetimepicker ×1

list ×1

nullable ×1

parsing ×1