我有一个表单,它有一个文本框,可以在输入时将一些数据发送到数据库。数据显示在转发器控件的文本框下方。通过在该文本框的TextChanged事件中将数据绑定到转发器,输入数据立即显示在表单上。
在CodeBehind中,我调用BindRepeater方法两次,每次新页面加载一次,文本框的TextChanged事件一次。
如何重写这个只能调用BindRepeater一次并仍能达到同样的效果?
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
BindRepeater();
}
}
protected void BindRepeater()
{
// data retrieval
// repeater binding
}
protected void CreateData(string newdata)
{
// data insert
}
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
if (TextBox1.Text != string.Empty)
{
string _newData = TextBox1.Text.Trim();
CreateData(_newData);
BindRepeater();
}
}
答案 0 :(得分:1)
使用在文本更改事件之后触发的事件来执行绑定。您现在可以从页面加载事件中删除它。