c# - gridview edititem 模板内的日历控件

标签 c# asp.net gridview calendar edititemtemplate

我可以访问 Gridview 页脚模板内的日历控件。 但在 EditItem 模板中做同样的事情就没那么容易了

有人可以建议如何做到这一点吗?

我在 EditItem 模板中使用 3 个控件:CalendarImageButtonTextBox 以及页脚模板。

可以使用GridView的FooterRow中的FindControl方法使日历可见True/False

protected void MyDateInsButton_Click(object sender, EventArgs e)
{
    if (GridView1.FooterRow.FindControl("MyDateInsCalendar").Visible == false)
    {
        GridView1.FooterRow.FindControl("MyDateInsCalendar").Visible = true;
    }
    else
    {
        GridView1.FooterRow.FindControl("MyDateInsCalendar").Visible = false;
    }
}

并获取页脚TextBox内选定的日期

protected void MyDateInsCalendar_SelectionChanged(object sender, EventArgs e)
{        
    Calendar MyCal = (Calendar)sender;

    ((TextBox)GridView1.FooterRow.FindControl("txtinsMyDate")).Text = MyCal.SelectedDate.ToString("d");
    GridView1.FooterRow.FindControl("MyDateInsCalendar").Visible = false;       
}

如何访问 EditItem 模板中的日历控件以使其可见 True 和 False?

protected void MyUpdButton_Click(object sender, EventArgs e)
{

}

GridView1_RowUpdating 方法可用于将选定的日期从日历控件获取到文本框控件中,但我仍然想让日历在用户按下图像按钮时显示和消失。

感谢任何帮助。 谢谢。

最佳答案

你就快到了。这样做:

protected void MyUpdButton_Click(object sender, EventArgs e)
{
    var MyDateInsCalendar = GridView1.Rows[GridView1.EditIndex].FindControl("MyDateInsCalendar") as Calendar;
    MyDateInsCalendar.Visible = false;
}

并在GridView1_RowEditing中,设置EditIndex,重新绑定(bind)数据:

 protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
 {
      GridView1.EditIndex = e.NewEditIndex;
      GridView1.DataSource = MyDataSource; //Set it to your datasource
      GridView1.DataBind();    
 }

希望对你有帮助!

关于c# - gridview edititem 模板内的日历控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19551384/

相关文章:

javascript - ASP.NET AJAX 控件 : UpdatePanel & UpdateProgress

c# - 如何从 asp :BoundField? 获取 GridView 值

c# - 有人能更好地解释 nHibernate 中的 'Projections' 是什么吗?

c# - 使用 MySql.Data.MySqlClient::MySqlCommand 字符串格式的 MySQL C# 查询问题

.net - 使用Asp.net 3.5的多线程与单线程

c# - 快速而肮脏的 GridView 不起作用

c# - 在 asp.net c# 4.0 中完全以编程方式创建 Gridview

c# - 为什么我会收到此文件 I/O 异常?

c# - 一个迷路的程序员寻求建议

c# - ASP.NET 错误 : Unable to cast object of type 'System.DateTime' to type 'System.String'