2010-08-07 46 views

Respuesta

37

"acaba de establecer la MaxSelectionCount a 1, de modo que los usuarios no puede seleccionar más de un día. Luego, en el SelectionRange.Start.ToString(). No hay nada disponible para mostrar la selección de solo un día ". - Justin Etheredge

De here.

+1

la propiedad es MonthCalendar.SelectionRange not 'SelectedRange' http://msdn.microsoft.com/en-us/library/system.windows.forms.selectionrange.start(v=vs.110).aspx – WhySoSerious

+0

Gracias. Las respuestas más cortas son las mejores. –

-2
+5

Si bien este enlace puede responder a la pregunta, es mejor incluir las partes esenciales de la responda aquí y proporcione el enlace de referencia. Las respuestas de solo enlace pueden dejar de ser válidas si la página vinculada cambia. – oleksii

+0

@oleksii Intente comprender la respuesta antes de elegir la plantilla de comentario de revisión. Las * partes esenciales de la respuesta * están ahí en el título del enlace. Y no estoy exactamente enlazando a una publicación de blog aleatoria, sino a la documentación del fabricante (* Microsoft *). –

+3

@DanielBeck Todavía es importante asegurarse de que las respuestas en SO sean independientes. Los enlaces dentro de ellos deben ser complementarios a la respuesta, no * ser * la respuesta. Esto podría significar citar o resumir las secciones relevantes del enlace, o simplemente publicar el enlace como un comentario. No se trata solo de evitar enlaces rotos, sino también de evitar dar vueltas a las personas que buscan respuestas. Nada es más frustrante cuando estás vinculado a una respuesta, que se vincula a una respuesta, que se vincula a una respuesta, que en realidad tiene lo que quieres. – Servy

1

Para aquellos que todavía lo intentan, este enlace me ayudó también; sólo se pone todo junto:

http://dotnetslackers.com/VB_NET/re-36138_How_To_Get_Selected_Date_from_MonthCalendar_control.aspx

private void MonthCalendar1_DateChanged(object sender, System.Windows.Forms.DateRangeEventArgs e) 
{ 
//Display the dates for selected range 
Label1.Text = "Dates Selected from :" + (MonthCalendar1.SelectionRange.Start() + " to " + MonthCalendar1.SelectionRange.End); 

//To display single selected of date 
//MonthCalendar1.MaxSelectionCount = 1; 

//To display single selected of date use MonthCalendar1.SelectionRange.Start/ MonthCalendarSelectionRange.End 
Label2.Text = "Date Selected :" + MonthCalendar1.SelectionRange.Start; 
} 
+0

Corregir esta línea: "MonthCalendar1.SelectionRange.Start()". Porque Start es una propiedad y no se puede usar como método: http://msdn.microsoft.com/en-us/library/system.windows.forms.selectionrange.start (v = vs.110) .aspx – WhySoSerious

5

Acabo de notar que si lo hace:

monthCalendar1.SelectionRange.Start.ToShortDateString() 

usted recibirá sólo la fecha (por ejemplo 1/25/2014) desde un control MonthCalendar.

Es opuesto a:

monthCalendar1.SelectionRange.Start.ToString() 

//The OUTPUT will be (e.g. 1/25/2014 12:00:00 AM) 

Debido a que estos MonthCalendar propiedades son de tipo DateTime. Consulte msdn y los métodos disponibles para convertir a una representación de Cadena. También this puede ayudar a convertir de un String a un objeto DateTime donde corresponda.

Cuestiones relacionadas