Что мне нужно сделать, чтобы показать календарь при нажатии кнопки? - PullRequest
0 голосов
/ 06 сентября 2011

Я пытаюсь создать календарь, который появляется при нажатии кнопки (...), но я застрял и не знаю, что мне делать.Ниже приведен код, который я использую.Я использую Visual Studio 2010 и C # в качестве языка программирования.

<asp:textbox id="TextBox1" runat="server"></asp:textbox>
<input type="button" id="Button2" runat="server" value="...."><br>
<asp:Panel id="pnlCalendar" runat="server" 
     style="POSITION: absolute">
 <asp:calendar id="Calendar3" runat="server" CellPadding="4" 
      BorderColor="#999999" Font-Names="Verdana" Font-Size="8pt" 
      Height="180px" ForeColor="Black" DayNameFormat="FirstLetter" 
      Width="200px" BackColor="White">
  <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="LightSteelBlue"></WeekendDayStyle>
  <OtherMonthDayStyle ForeColor="#808080"></OtherMonthDayStyle>
 </asp:calendar>
</asp:Panel>

This is generated with my code

Ответы [ 4 ]

4 голосов
/ 06 сентября 2011

ASP.NET Calendar довольно сложно использовать таким образом. Проще всего использовать Календарь AJAX или JQuery DatePicker .

0 голосов
/ 20 июля 2015

Вы можете сделать это, когда кто-то нажимает на само текстовое поле.

        <asp:Label ID="lblDate"  runat="server" Text="Date :"></asp:Label>
        <asp:TextBox ID="txtDate" runat="server" ></asp:TextBox> YYYY-MM-DD
        <asp:CalendarExtender ID="CalendarExtender1" TargetControlID="txtDate" runat="server" Format="yyyy-MM-dd">
        </asp:CalendarExtender> 
0 голосов
/ 06 сентября 2011

Если вы действительно хотите сделать это на стороне сервера, то это то, что вы можете сделать.

bool showCalendar = false;
protected void Page_Load(object sender, EventArgs e)
{
    if (showCalendar)
        Calendar1.Visible = true;
    else
        Calendar1.Visible = false;
}

protected void Button1_Click(object sender, EventArgs e)
{
    Calendar1.Visible = true;
}

В основном настройка Calendar.Visible в значение false, и когда пользователь нажимает кнопку, установите для него значение true, но как только оно будет установлено в значение true, на самом деле оно не появляется, но элемент управления добавляется с помощью обратной передачи

0 голосов
/ 06 сентября 2011

Вы можете рассмотреть возможность использования jQuery UI Date Picker ... Гибкая, на стороне клиента и занимает две минуты для установки с помощью NuGet

Установите NuGet на VS иТип Install-Package jQuery.UI.Combined

включает необходимые библиотеки JavaScript, следуйте примеру, и все готово;)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...