C# 如何使用asp.net将值传递给文本框
我想根据用户输入的生日向文本框传递一个值。如果用户未满15年C# 如何使用asp.net将值传递给文本框,c#,asp.net,C#,Asp.net,我想根据用户输入的生日向文本框传递一个值。如果用户未满15年“借阅图书”字段的值应为4,否则应为8。请告诉我如何继续。在日历html中使用下列日历事件Selection\u Change=“Selection\u Change” 编辑1 我认为您必须向asp.net日历添加一个事件:Calendar.SelectionChanged事件 那么您的代码将如下所示: 前端: <asp:Calendar ID="calcBorrowerBorn" runat="server" OnSelec
“借阅图书”
字段的值应为4
,否则应为8
。请告诉我如何继续。在日历html中使用下列日历事件Selection\u Change=“Selection\u Change”
编辑1
我认为您必须向asp.net日历添加一个事件:Calendar.SelectionChanged事件 那么您的代码将如下所示: 前端:
<asp:Calendar ID="calcBorrowerBorn" runat="server" OnSelectionChanged="Selection_Change" VisibleDate="2014-11-08"
BackColor="White" BorderColor="Black" BorderStyle="Solid" CellSpacing="1"
Font-Names="Verdana" Font-Size="9pt" ForeColor="Black" Height="250px"
NextPrevFormat="ShortMonth" ShowGridLines="True" Width="330px">
<DayHeaderStyle Font-Bold="True" Font-Size="8pt" ForeColor="#333333"
Height="8pt" />
<DayStyle BackColor="#CCCCCC" />
<NextPrevStyle Font-Bold="True" Font-Size="8pt" ForeColor="White" />
<OtherMonthDayStyle ForeColor="#999999" />
<SelectedDayStyle BackColor="#333399" ForeColor="White" />
<TitleStyle BackColor="#333399" BorderStyle="Solid" Font-Bold="True"
Font-Size="12pt" ForeColor="White" Height="12pt" />
<TodayDayStyle BackColor="#999999" ForeColor="White" />
</asp:Calendar>
请不要使用
来布局表单,除非它是一个表示表格数据的表单,而这看起来不像。Șhȇkhaṝ : 无法immplicity将类型“int”转换为“string”,我将此转换为“txtbookerbooks.Text=year>15?8:4;”确定使用字符串方法。“System.TimeSpan”不包含“year”的定义,并且找不到接受类型“System.TimeSpan”的第一个参数的扩展方法“year”(您是否缺少using指令或程序集引用?无法immplicity将类型“int”转换为“string”,我将此转换为“txtbookerbooks.Text=year>15?8:4;”@shumz Oh…我在that@shumzText=(GetAge(userSelectedDate)>15)?“8”:“4”;
void Selection_Change(Object sender, EventArgs e)
{
DateTime date1 = Calendar1.SelectedDate;
DateTime zeroTime = new DateTime(1, 1, 1);
var dateDiff=DateTime.Today-date1 ;
var year=(zeroTime +dateDiff).Year;
var totalBook=year > 15 ? 8: 4;
txtBorrowerBooks.Text =totalBook.ToString();
}
<asp:Calendar ID="calcBorrowerBorn" runat="server" OnSelectionChanged="Selection_Change" VisibleDate="2014-11-08"
BackColor="White" BorderColor="Black" BorderStyle="Solid" CellSpacing="1"
Font-Names="Verdana" Font-Size="9pt" ForeColor="Black" Height="250px"
NextPrevFormat="ShortMonth" ShowGridLines="True" Width="330px">
<DayHeaderStyle Font-Bold="True" Font-Size="8pt" ForeColor="#333333"
Height="8pt" />
<DayStyle BackColor="#CCCCCC" />
<NextPrevStyle Font-Bold="True" Font-Size="8pt" ForeColor="White" />
<OtherMonthDayStyle ForeColor="#999999" />
<SelectedDayStyle BackColor="#333399" ForeColor="White" />
<TitleStyle BackColor="#333399" BorderStyle="Solid" Font-Bold="True"
Font-Size="12pt" ForeColor="White" Height="12pt" />
<TodayDayStyle BackColor="#999999" ForeColor="White" />
</asp:Calendar>
void Selection_Change(Object sender, EventArgs e)
{
DateTime userSelectedDate = Calendar1.SelectedDate;
txtBorrowerBooks.Text = (GetAge(userSelectedDate) > 15)?"8":"4";
}
public Int32 GetAge(DateTime dateOfBirth)
{
var today = DateTime.Today;
var a = (today.Year * 100 + today.Month) * 100 + today.Day;
var b = (dateOfBirth.Year * 100 + dateOfBirth.Month) * 100 + dateOfBirth.Day;
return (a - b) / 10000;
}