Click here to Skip to main content
15,885,278 members
Home / Discussions / .NET (Core and Framework)
   

.NET (Core and Framework)

 
GeneralGetting free disk space Pin
Arash Sabet21-Oct-02 4:39
Arash Sabet21-Oct-02 4:39 
GeneralRe: Getting free disk space Pin
Stephane Rodriguez.21-Oct-02 5:00
Stephane Rodriguez.21-Oct-02 5:00 
GeneralDateTimePicker Pin
Derek Lakin21-Oct-02 4:21
Derek Lakin21-Oct-02 4:21 
GeneralRe: DateTimePicker Pin
leppie21-Oct-02 7:59
leppie21-Oct-02 7:59 
GeneralRe: DateTimePicker Pin
Derek Lakin21-Oct-02 21:43
Derek Lakin21-Oct-02 21:43 
GeneralRe: DateTimePicker Pin
leppie1-Nov-02 8:34
leppie1-Nov-02 8:34 
GeneralRe: DateTimePicker Pin
Richard Deeming22-Oct-02 1:51
mveRichard Deeming22-Oct-02 1:51 
GeneralRe: DateTimePicker Pin
Richard Deeming22-Oct-02 2:24
mveRichard Deeming22-Oct-02 2:24 
Better yet, here's some C# code that seems to work:
using System;
using System.Windows.Forms;

public class DateTimeBinding : Binding
{
   public DateTimeBinding(string propertyName, object dataSource, string dataMember) 
      : base(propertyName, dataSource, dataMember)
   {}
 
   protected override void OnFormat(ConvertEventArgs e)
   {
      if (e.DesiredType == typeof(DateTime))
      {
         if (e.Value is DBNull)
            e.Value = DateTimePicker.MinDateTime;
      }
      else if (e.DesiredType == typeof(bool))
      {
         if (e.Value is DBNull)
            e.Value = false;
         else
            e.Value = true;
      }
 
      base.OnFormat(e);
   }
 
   protected override void OnParse(ConvertEventArgs e)
   {
      if (e.DesiredType == typeof(DateTime)
         && e.Value is DateTime
         && (DateTime)e.Value == DateTimePicker.MinDateTime)
 
         e.Value = DBNull.Value;
 
      else if (e.DesiredType == typeof(bool)
         && e.Value is bool
         && (bool)e.Value == false)
 
         e.Value = DBNull.Value;
 
      base.OnParse(e);
   }
}

Then, you just need to add the appropriate bindings:
dtp.ShowCheckBox = true;
dtp.DataBindings.Add(new DateTimeBinding("Value", ds, "[Date Field]"));
dtp.DataBindings.Add(new DateTimeBinding("Checked", ds, "[Date Field]"));


I haven't tested updating the data, but the display seems to work fine.
GeneralRe: DateTimePicker Pin
Derek Lakin22-Oct-02 2:37
Derek Lakin22-Oct-02 2:37 
GeneralRe: DateTimePicker Pin
Derek Lakin29-Oct-02 0:10
Derek Lakin29-Oct-02 0:10 
GeneralRe: DateTimePicker Pin
Richard Deeming29-Oct-02 1:59
mveRichard Deeming29-Oct-02 1:59 
GeneralData Binding and Windows Forms Pin
Derek Lakin17-Oct-02 23:41
Derek Lakin17-Oct-02 23:41 
GeneralUploaded Files Get Locked for ~ 30 seconds Pin
Angus Logan17-Oct-02 19:24
Angus Logan17-Oct-02 19:24 
GeneralRe: Uploaded Files Get Locked for ~ 30 seconds Pin
Vasudevan Deepak Kumar29-Oct-02 2:26
Vasudevan Deepak Kumar29-Oct-02 2:26 
GeneralSalamander .NET Protector Pin
Patrick Lassalle17-Oct-02 1:57
Patrick Lassalle17-Oct-02 1:57 
GeneralRe: Salamander .NET Protector Pin
Derek Lakin17-Oct-02 23:43
Derek Lakin17-Oct-02 23:43 
GeneralRe: Salamander .NET Protector Pin
Patrick Lassalle17-Oct-02 23:47
Patrick Lassalle17-Oct-02 23:47 
GeneralRe: Salamander .NET Protector Pin
Derek Lakin18-Oct-02 3:55
Derek Lakin18-Oct-02 3:55 
GeneralRe: CLickety Pin
Daniel Turini21-Oct-02 4:36
Daniel Turini21-Oct-02 4:36 
GeneralHeeeeeeeeeeelp: CString and /clr Pin
Doug16-Oct-02 12:51
Doug16-Oct-02 12:51 
GeneralRe: Heeeeeeeeeeelp: CString and /clr Pin
David Stone16-Oct-02 13:22
sitebuilderDavid Stone16-Oct-02 13:22 
GeneralRe: Heeeeeeeeeeelp: CString and /clr Pin
Doug16-Oct-02 13:48
Doug16-Oct-02 13:48 
GeneralRe: Heeeeeeeeeeelp: CString and /clr Pin
David Stone16-Oct-02 14:08
sitebuilderDavid Stone16-Oct-02 14:08 
GeneralRe: Heeeeeeeeeeelp: CString and /clr Pin
David Stone16-Oct-02 15:16
sitebuilderDavid Stone16-Oct-02 15:16 
GeneralRe: Heeeeeeeeeeelp: CString and /clr Pin
Paul Riley16-Oct-02 21:32
Paul Riley16-Oct-02 21:32 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.