2017-04-12 5 views
0

이 코드가 있습니다. 아무 버튼이나 클릭해도 작동하지 않습니다. 모든 단추를 EventHandler (Button1_Click)를 실행하고 싶습니다. 나는 여러 개의 AsyncPostBackTrigger를 사용하려고했지만 타이머 메서드가 작동하지 않았다.타이머가있는 업데이트 패널의 버튼이 작동하지 않습니다.

다음
public DataTable data1 = new DataTable(); 
protected void Timer1_Tick(object sender, EventArgs e){ 
     MySqlConnection con = openconnection(); 
     MySqlDataAdapter sda1 = new MySqlDataAdapter("SELECT id FROM orderprogress WHERE Order=0;", con); 
     sda1.Fill(data1); 

     for (int i = 0; i < data1.Rows.Count; i++){ 
      TableRow row = new TableRow(); 
      TableCell cell1 = new TableCell(); 
      cell1.Text = data1.Rows[i][0].ToString(); 
      row.Cells.Add(cell1); 
      Table1.Rows.Add(row); 
      insertbuttons(i); 
      } 
} 
void insertbuttons(int i){ 
     Button btn = new Button(); 
     btn.ID = data1.Rows[i][0].ToString(); 
     btn.Text = "Apply!"; 
     btn.Click += new EventHandler(Button1_Click); 
     TableRow row1 = new TableRow(); 
     TableCell cell2 = new TableCell(); 
     row1.Cells.Add(cell2); 
     Table1.Rows[i].Cells[1].Controls.Add(btn); 
    } 
protected void Button1_Click(object sender, EventArgs e){ 
     orderidlb.Text = "button pressed"; 
    } 

ASP 코드는 내가 사용 :

<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager> 
<asp:Timer ID="Timer1" runat="server" OnTick="Timer1_Tick" Interval="10"></asp:Timer> 
<asp:UpdatePanel ID="UpdatePanel1" runat="server" AutoPostBack="True" UpdateMode="Conditional" ChildrenAsTriggers="true"> 
    <Triggers> 
     <asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" /> 
    </Triggers> 
    <ContentTemplate> 
      <asp:Table ID="Table1" runat="server"> 
       <asp:TableRow> 
        <asp:TableCell>ID</asp:TableCell> 
        <asp:TableCell>test BTN!</asp:TableCell> 
       </asp:TableRow> 
      </asp:Table> 
     </ContentTemplate> 
</asp:UpdatePanel> 
+0

단추에 AutoPostBack = "true"를 시도 했습니까? – Seano666

답변

0

조금 늦게,하지만 지금까지 내가 타이머의 간격이 완료 될 때까지 버튼이 발생하지 않는 것을 발견하지만 경우에 한하여 간격이 너무 작 으면 간격이 완전히 발사되기 전에 간격이 다시 발생하여 단추 클릭이 무효화됩니다. 타이머가 100 분의 1 초마다 똑딱 거리며 너무 빠르다. 1 초 (Interval = "1000")로 증가하면 단추가 작동한다는 것을 알게 될 것입니다. 예를 들어 10 초와 같이 간격을 너무 길게 늘리면 버튼을 클릭해도 아무 일도 일어나지 않지만 약 10 초 후에 명령이 실행됩니다. 이상한 행동, 나는 여전히 즉각적인 해결책을 찾고자 노력하고 있지만, 이것이 내가 잠시 동안 가지고있는 것입니다.