Foros del Web » Programación para mayores de 30 ;) » .NET »

ayuda, con efecto calendar

Estas en el tema de ayuda, con efecto calendar en el foro de .NET en Foros del Web. holas a todos estoy tratando de hacer lo siguiente buscando el control calendar encontre que uno puede hacer que aprecesca y desaparesca con una etiqueta ...
  #1 (permalink)  
Antiguo 05/11/2004, 07:43
 
Fecha de Ingreso: septiembre-2004
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
ayuda, con efecto calendar

holas a todos estoy tratando de hacer lo siguiente

buscando el control calendar encontre que uno puede hacer que aprecesca y desaparesca con una etiqueta DIV, lo que quiero es no hacer esos tipicos dropdown con dia mes y año,y cambiarlos por CALENDAR de ASPX..

para esto encontre este ejmplo en quickstar de asp.net

sobre 2 calendarios

http://es.gotdotnet.com/quickstart/u...datagrid16.src

http://es.gotdotnet.com/quickstart/a...atagrid16.aspx

Ademas tengo este otro codigo donde uno pinchando en un boton aparece y desaparece el calendario.
CODIGO:
<%@ Page Language="VB" %>
<script runat="server">

'
'


</script>
<html>
<head>
</head>
<body>
<form runat="server">
<asp:TextBox id="TextBox1" runat="server"></asp:TextBox>
<input onclick="OnClick()" type="button" value="Date" />
<br />
<!-- Insert content here -->
<div id="divCalendar" style="DISPLAY: none; POSITION: absolute">

<asp:Calendar id="Calendar1" runat="server" BorderWidth="2px" BackColor="White" Width="200px" ForeColor="Black" Height="180px" Font-Size="8pt" Font-Names="Verdana" BorderColor="#999999" BorderStyle="Outset" DayNameFormat="FirstLetter" CellPadding="4">
<TodayDayStyle forecolor="Black" backcolor="#CCCCCC"></TodayDayStyle>
<SelectorStyle backcolor="#CCCCCC"></SelectorStyle>
<NextPrevStyle verticalalign="Bottom"></NextPrevStyle>
<DayHeaderStyle font-size="7pt" font-bold="True" backcolor="#CCCCCC"></DayHeaderStyle>
<SelectedDayStyle font-bold="True" forecolor="White" backcolor="#666666"></SelectedDayStyle>
<TitleStyle font-bold="True" bordercolor="Black" backcolor="#999999"></TitleStyle>
<WeekendDayStyle backcolor="#FFFFCC"></WeekendDayStyle>
<OtherMonthDayStyle forecolor="#808080"></OtherMonthDayStyle>
</asp:Calendar>
</div>
<script>
function OnClick()
{
if( divCalendar.style.display == "none")
divCalendar.style.display = "";
else
divCalendar.style.display = "none";
}
</script>
</form>
</body>
</html>


***cual es mi problema???

***REspuesta: quiero que los dos calendarios se puedan ocultar y cual es mi problema 2 es que no se bien como capturar la fecha, algun amigo que me diga como capturar la fecha y dejarla lista para enviarla al Sqlserver porfas

no es mucho lo que pido, y ademas seria un buen aporte para todos que debemos hacer reportes y ya estamos aburridos de poner el dropdown con dia mes y año.

si logro que funcione. pongo el ejmplo sino algun amigo que sea mejor programador que lo haga tambien

ayudenme porfa
  #2 (permalink)  
Antiguo 05/11/2004, 08:49
 
Fecha de Ingreso: septiembre-2004
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
quiero hacer algo asi miren este ejemplo

http://www.developer.com/net/asp/article.php/3327181


pero que ademas ponga la fecha en el textbox
  #3 (permalink)  
Antiguo 05/11/2004, 09:26
 
Fecha de Ingreso: octubre-2004
Mensajes: 878
Antigüedad: 19 años, 6 meses
Puntos: 1
pasar la fecha al textox, yo lo hago asi:

private void cal_SelectionChanged(object sender, System.EventArgs e)
{
txtFecha.Text =cal.SelectedDate.Day + "/" + cal.SelectedDate.Month + "/" + cal.SelectedDate.Year ;

}

http://hhdirecto.webcindario.com
  #4 (permalink)  
Antiguo 05/11/2004, 09:41
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Cita:
pasar la fecha al textox, yo lo hago asi:
Creo que haciendo tun ToString todavía es mas fácil:

Ejemplo:

Cita:
private void cal_SelectionChanged(object sender, System.EventArgs e)
{
txtFecha.Text = cal.SelectedDate.ToString("dd/MM/yyyy");
}
Salu2
  #5 (permalink)  
Antiguo 07/11/2004, 10:33
 
Fecha de Ingreso: septiembre-2004
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
y de esa forma lo podre capturar,, me puedes ayudar con el div me ustaria que cuando pinche en l fecha no se pierda el calendario hasta que se presione el boton para guardar la fecha, es decir que el user elija bien la fecha que queire y luego al final guarde el calendario y le de enviar y envie la variable fecha al server y la captura y traiga los datos

rootk oye el codigoqu me pusiste del

private void cal_SelectionChanged(object sender, System.EventArgs e)
{
txtFecha.Text = cal.SelectedDate.ToString("dd/MM/yyyy");
}


ese va donde dice script al comienzo de mi pagina???

diculpa laas preguntas an tontas que puedo hacer derrepente
  #6 (permalink)  
Antiguo 07/11/2004, 11:56
Avatar de splinter  
Fecha de Ingreso: junio-2004
Ubicación: Misantla,Ver.Mexico
Mensajes: 181
Antigüedad: 19 años, 10 meses
Puntos: 0
hola

Algunas veces uso un calendario en javascript, hace lo que creo tu andas buscando, y es sencillo de implementar en aspx, si lo quieres manda tu correo y te envio la copia para que lo pruebes.


saludos

Última edición por splinter; 07/11/2004 a las 11:58
  #7 (permalink)  
Antiguo 07/11/2004, 22:19
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
Hola!

Esto es lo que hago yo:

Pongo un html control image en el aspx que llama a una función de javascript

<IMG title="Pulse aquí para seleccionar la fecha del calendario" style="Z-INDEX: 132; LEFT: 320px; CURSOR: hand; POSITION: absolute; TOP: 352px"
onclick="GetDateTime('txtentrada')" alt="" src="calendar\icon-calendar.gif">

txtentrada es un textbox donde irá a para la fecha que he recuperado del pop-up que contiene el calendario.

Esta es la función javascript dentro del <head>, que llama a Calendar.aspx, que es el form que abre el calendario en un pop-up pequeñito:

<script language="javascript" type="text/javascript">
function GetDateTime(obj){
var url = 'Calendario.aspx?textbox=' + obj;
window.open(url,'cal','width=176,height=176,left=3 70,top=280,resizable=1,scrollbars=0');
}
</script>

El código para calendar.aspx (primero pongo el html, y luego el aspx)

<form id="Form1" method="post" runat="server">
<asp:calendar id="Calendar1" style="Z-INDEX: 101; LEFT: 0px; POSITION: absolute; TOP: 0px" runat="server"
BorderWidth="1px" BackColor="White" Width="176px" DayNameFormat="FirstLetter" ForeColor="#003399"
Height="176px" Font-Size="8pt" Font-Names="Verdana" BorderColor="#3366CC" CellPadding="1"
ShowGridLines="True">
<TodayDayStyle ForeColor="White" BackColor="#99CCCC"></TodayDayStyle>
<SelectorStyle ForeColor="#336666" BackColor="#99CCCC"></SelectorStyle>
<DayStyle BorderWidth="1px" BorderStyle="Groove"></DayStyle>
<NextPrevStyle Font-Size="8pt" ForeColor="#CCCCFF"></NextPrevStyle>
<DayHeaderStyle Height="1px" ForeColor="#336666" BackColor="#99CCCC"></DayHeaderStyle>
<SelectedDayStyle Font-Bold="True" ForeColor="#CCFF99" BackColor="#009999"></SelectedDayStyle>
<TitleStyle Font-Size="8pt" Font-Names="Verdana" Font-Bold="True" Height="25px" BorderWidth="1px"
ForeColor="#CCCCFF" BorderStyle="Solid" BorderColor="#3366CC" BackColor="#003399"></TitleStyle>
<WeekendDayStyle BackColor="#CCCCFF"></WeekendDayStyle>
<OtherMonthDayStyle ForeColor="#999999"></OtherMonthDayStyle>
</asp:calendar>
<asp:label id="Label1" style="Z-INDEX: 102; LEFT: 8px; POSITION: absolute; TOP: 184px" runat="server">Label</asp:label>
<INPUT id="Control" style="Z-INDEX: 103; LEFT: 8px; POSITION: absolute; TOP: 216px" type="hidden"
runat="server">
</form>


Y el code behind:

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Control.Value = Request.QueryString("textbox").ToString()
End Sub

Private Sub Calendar1_SelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Calendar1.SelectionChanged
Dim strScript As String = "<script>window.opener.document.forms(0)." + Control.Value + ".value = '"
strScript += Calendar1.SelectedDate.ToString()
strScript += "';self.close()"
strScript += "</" + "script>"
RegisterClientScriptBlock("ok", strScript)
Label1.Text = Control.Value
End Sub


Private Sub Calendar1_DayRender(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DayRenderEventArgs) Handles Calendar1.DayRender
If (e.Day.Date.Day < Now.Day) Or (e.Day.Date.Month < Now.Month) Then
e.Day.IsSelectable = False
End If
End Sub

Espero que te sirva...cualquier duda, ya sabes dónde encontrarme
__________________
Pide lo que quieras...y luego paga por ello
  #8 (permalink)  
Antiguo 07/11/2004, 22:21
Avatar de luiscl  
Fecha de Ingreso: abril-2004
Ubicación: Zaragoza
Mensajes: 305
Antigüedad: 20 años
Puntos: 0
Perdón, cambia calendar.aspx por calendario.aspx...que me he liado. Así cuando pulsas en una fecha, se te cierra el pop-up del calendario y te deja la fecha seleccionada en el campo txtentrada.
__________________
Pide lo que quieras...y luego paga por ello
  #9 (permalink)  
Antiguo 08/11/2004, 06:33
 
Fecha de Ingreso: septiembre-2004
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
Cita:
Iniciado por RootK
Creo que haciendo tun ToString todavía es mas fácil:

Ejemplo:



Salu2

Rootk ,me dio el siguiente erro puse tu odigo en code behinf y mira

Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

Compiler Error Message: BC30205: End of statement expected.


no entiendo que paso
  #10 (permalink)  
Antiguo 08/11/2004, 06:38
 
Fecha de Ingreso: septiembre-2004
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
Cita:
Iniciado por luiscl
Hola!

Esto es lo que hago yo:

Pongo un html control image en el aspx que llama a una función de javascript

<IMG title="Pulse aquí para seleccionar la fecha del calendario" style="Z-INDEX: 132; LEFT: 320px; CURSOR: hand; POSITION: absolute; TOP: 352px"
onclick="GetDateTime('txtentrada')" alt="" src="calendar\icon-calendar.gif">

txtentrada es un textbox donde irá a para la fecha que he recuperado del pop-up que contiene el calendario.

Esta es la función javascript dentro del <head>, que llama a Calendar.aspx, que es el form que abre el calendario en un pop-up pequeñito:

<script language="javascript" type="text/javascript">
function GetDateTime(obj){
var url = 'Calendario.aspx?textbox=' + obj;
window.open(url,'cal','width=176,height=176,left=3 70,top=280,resizable=1,scrollbars=0');
}
</script>

El código para calendar.aspx (primero pongo el html, y luego el aspx)

<form id="Form1" method="post" runat="server">
<asp:calendar id="Calendar1" style="Z-INDEX: 101; LEFT: 0px; POSITION: absolute; TOP: 0px" runat="server"
BorderWidth="1px" BackColor="White" Width="176px" DayNameFormat="FirstLetter" ForeColor="#003399"
Height="176px" Font-Size="8pt" Font-Names="Verdana" BorderColor="#3366CC" CellPadding="1"
ShowGridLines="True">
<TodayDayStyle ForeColor="White" BackColor="#99CCCC"></TodayDayStyle>
<SelectorStyle ForeColor="#336666" BackColor="#99CCCC"></SelectorStyle>
<DayStyle BorderWidth="1px" BorderStyle="Groove"></DayStyle>
<NextPrevStyle Font-Size="8pt" ForeColor="#CCCCFF"></NextPrevStyle>
<DayHeaderStyle Height="1px" ForeColor="#336666" BackColor="#99CCCC"></DayHeaderStyle>
<SelectedDayStyle Font-Bold="True" ForeColor="#CCFF99" BackColor="#009999"></SelectedDayStyle>
<TitleStyle Font-Size="8pt" Font-Names="Verdana" Font-Bold="True" Height="25px" BorderWidth="1px"
ForeColor="#CCCCFF" BorderStyle="Solid" BorderColor="#3366CC" BackColor="#003399"></TitleStyle>
<WeekendDayStyle BackColor="#CCCCFF"></WeekendDayStyle>
<OtherMonthDayStyle ForeColor="#999999"></OtherMonthDayStyle>
</asp:calendar>
<asp:label id="Label1" style="Z-INDEX: 102; LEFT: 8px; POSITION: absolute; TOP: 184px" runat="server">Label</asp:label>
<INPUT id="Control" style="Z-INDEX: 103; LEFT: 8px; POSITION: absolute; TOP: 216px" type="hidden"
runat="server">
</form>


Y el code behind:

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Control.Value = Request.QueryString("textbox").ToString()
End Sub

Private Sub Calendar1_SelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Calendar1.SelectionChanged
Dim strScript As String = "<script>window.opener.document.forms(0)." + Control.Value + ".value = '"
strScript += Calendar1.SelectedDate.ToString()
strScript += "';self.close()"
strScript += "</" + "script>"
RegisterClientScriptBlock("ok", strScript)
Label1.Text = Control.Value
End Sub


Private Sub Calendar1_DayRender(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DayRenderEventArgs) Handles Calendar1.DayRender
If (e.Day.Date.Day < Now.Day) Or (e.Day.Date.Month < Now.Month) Then
e.Day.IsSelectable = False
End If
End Sub

Espero que te sirva...cualquier duda, ya sabes dónde encontrarme



MEDIO EL SIGUIENTE ERROR

Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

Compiler Error Message: BC30506: Handles clause requires a WithEvents variable.

Source Error:



Line 8: End Sub
Line 9:
Line 10: Private Sub Calendar1_SelectionChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Calendar1.SelectionChanged
Line 11: Dim strScript As String = "<script>window.opener.document.forms(0)." + Control.Value + ".value = '"
Line 12: strScript += Calendar1.SelectedDate.ToString()
  #11 (permalink)  
Antiguo 08/11/2004, 08:43
Avatar de OSRO  
Fecha de Ingreso: octubre-2004
Mensajes: 114
Antigüedad: 19 años, 6 meses
Puntos: 0
Ese error creo que es cuando tu control no esta declarado en el code behind, abajo de:

Public Class IndexPrecios
Inherits System.Web.UI.Page

debes de tener esta linea para tu control:

Protected WithEvents Calendar1 As System.Web.UI.WebControls.Calendar

Tambien puede estar en la region de codigo que genera el diseñador de web forms. creo que eso es lo que te falta, yo ya lo probe y si jala.

  #12 (permalink)  
Antiguo 08/11/2004, 13:39
 
Fecha de Ingreso: septiembre-2004
Mensajes: 141
Antigüedad: 19 años, 7 meses
Puntos: 0
gracias espero me funcione lo pruebo altiro y les cuento
  #13 (permalink)  
Antiguo 16/11/2004, 14:32
Avatar de RicaJ0625  
Fecha de Ingreso: noviembre-2004
Ubicación: La Chorrera, Panamá
Mensajes: 86
Antigüedad: 19 años, 5 meses
Puntos: 0
Calendario para ASP.net

Tengo este control de calendario en .Net que creo que les puede servir: RJS.PopCalendar 1.9 (2.9.0)

Es gratis.

Última edición por RicaJ0625; 16/11/2004 a las 15:17
  #14 (permalink)  
Antiguo 19/11/2004, 09:26
 
Fecha de Ingreso: noviembre-2004
Mensajes: 1
Antigüedad: 19 años, 5 meses
Puntos: 0
Cita:
Iniciado por RicaJ0625
Tengo este control de calendario en .Net que creo que les puede servir: RJS.PopCalendar 1.9 (2.9.0)

Es gratis.
Un saludo a todos estoy empezando a programar en asp.net utilice el control que RICAJ0625 menciona lo que quiero saber es como pasar la fecha que se selecciona a un textbox
  #15 (permalink)  
Antiguo 19/11/2004, 09:36
Avatar de splinter  
Fecha de Ingreso: junio-2004
Ubicación: Misantla,Ver.Mexico
Mensajes: 181
Antigüedad: 19 años, 10 meses
Puntos: 0
Hola

Usa la propiedad CONTROL del calendario y asignale el nombre del control (Text1.text) por ejemplo

Saludos
  #16 (permalink)  
Antiguo 19/11/2004, 09:57
Avatar de RicaJ0625  
Fecha de Ingreso: noviembre-2004
Ubicación: La Chorrera, Panamá
Mensajes: 86
Antigüedad: 19 años, 5 meses
Puntos: 0
Cita:
Iniciado por splinter
Hola

Usa la propiedad CONTROL del calendario y asignale el nombre del control (Text1.text) por ejemplo

Saludos
Para inicializar el valor del textbox que es controlado por el calendario le asignas el valor al calendario
Ejemplo:

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If Not Page.IsPostBack Then
PopCalendar1.DateValue = Date.Today
PopCalendar2.DateValue = Date.Today.AddDays(-7)
End If
End Sub

Última edición por RicaJ0625; 19/11/2004 a las 10:11
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:47.