我使用图像按钮来显示asp.net日历控件(此控件随VS 2008一起提供)。但是,当我单击图像按钮时,日历控件将显示在“支持”填充的文本字段“下方”。如何让控件显示在文本域的右侧?
我的代码是:
<asp:ImageButton ID="imgCalendar" runat="server" Height="17px"
ImageUrl="~/Images/CAL.gif"
onclick="imgCalendar_Click1" Width="19px"
Visible="true" ImageAlign="Middle" />
<asp:Panel ID="Panel1" runat="server">
<asp:Calendar ID="calStartDate" runat="server" BackColor="Transparent"
BorderColor="#FFCC66" BorderWidth="1px" DayHeaderStyle-BackColor="gainsboro"
DayNameFormat="Shortest" FirstDayOfWeek="Monday" Font-Bold="True"
Font-Names="Verdana" Font-Size="8pt" ForeColor="Gray" Height="102px"
OnSelectionChanged="calStartDate_SelectionChanged"
OtherMonthDayStyle-ForeColor="gray" SelectedDayStyle-BackColor="Navy"
SelectedDayStyle-Font-Bold="True" SelectorStyle-BackColor="gainsboro"
ShowGridLines="True" TitleStyle-BackColor="gray" TitleStyle-Font-Bold="True"
TitleStyle-Font-Size="12px" TodayDayStyle-BackColor="gainsboro" Visible="False" Width="62px">
<SelectedDayStyle BackColor="#404040" Font-Bold="True" />
<TodayDayStyle BackColor="#3A080B" ForeColor="White" />
<SelectorStyle BackColor="#FFCC66" />
<OtherMonthDayStyle ForeColor="#CC9966" />
<NextPrevStyle Font-Size="9pt" ForeColor="#3A080B" />
<DayHeaderStyle BackColor="#3A080B" Font-Bold="True" Height="1px" ForeColor="White" />
<TitleStyle BackColor="#E0C16B" Font-Bold="True" Font-Size="9pt" ForeColor="#3A080B" />
</asp:Calendar>
</asp:Panel>
答案 0 :(得分:1)
在我的脑海中,我建议您设置CssClass
的{{1}}属性并使用CSS定位它。控件生成的HTML可能会呈现块级元素(最有可能是asp:Panel
或<div>
),这将导致它默认显示在新行上。
尝试使用<table>
或display: inline
或使用display: inline-block
进行定位。
根据您为文本框设置样式的方式,您可能还需要修改它的样式以适应日历的位置。
答案 1 :(得分:0)
将style =“float:right”添加到文本框中。