2012-05-26 45 views
0

我希望有一個簡單的問題。我有一個ASPxGridView,我需要從中提取數據並將其傳遞給函數。我想要做到這一點的一個簡單方法是使用會話變量。ASP.NET不顯示eval在頁面 - ASPxGridView

但是,當我做Eval綁定它顯示屏幕上的字符(以及將它們放入變量)。我如何從屏幕上刪除角色?或者也許有一個更簡單的方法來做到這一點。

代碼是在這裏(真正的肉是4號線下來):

  <dx:GridViewDataButtonEditColumn Caption="" Name="Schedule" 
      VisibleIndex="11"> 
      <DataItemTemplate> 
      <%# Session["PatientID"] = Eval("PatientID")%> 
        <dx:ASPxButton ID="ASPxButton1" runat="server" Text="Schedule" OnClick="Button_Click" > 
        </dx:ASPxButton> 
      </DataItemTemplate> 

     </dx:GridViewDataButtonEditColumn> 
+0

您可以使用ASPxGridView控件的DataKeyNames屬性。 –

回答

1

試試這個

<dx:GridViewDataButtonEditColumn Caption="" Name="Schedule" VisibleIndex="11"> 
    <DataItemTemplate> 
     <dx:ASPxButton ID="ASPxButton1" 
     runat="server" Text="Schedule" 
     OnClick="Button_Click" 
     CommandName='SomeCoolCommandName' 
     CommandArgument='<%#Eval("PatientID")'> 
     </dx:ASPxButton> 
     </DataItemTemplate> 
</dx:GridViewDataButtonEditColumn> 

關於它的rowcommand或Itemcommand事件檢查命令並做一些事情..

protected YourGrid_ItemCommand(sender, e) 
{ 
    if(e.CommandName.Equals("SomeCoolCommandName")) 
    { 
     var id = Convert.ToInt32(e.CommandArgument); // Give you your Patient ID 
     // do whatever you want to do with your ID 
    } 
} 
1

嘗試把一個隱藏字段,並結合其價值就像下面

<asp:HiddenField ID="hdnPatientID" runat="server" Value='<%# Eval("PatientID")%>' /> 
0

我在此處添加功能代碼。謝謝大家!使用命令效果很好。

protected void Button_Click(object sender, CommandEventArgs e) 
{ 
    string patID = e.CommandArgument.ToString(); 
    Response.Redirect("schedule.aspx?PatientID=" + patID); 
} 


    <dx:GridViewDataButtonEditColumn Caption="" Name="Schedule" 
     VisibleIndex="11"> 
     <DataItemTemplate> 
      <dx:ASPxButton ID="ASPxButton1" runat="server" Text="Schedule" 
CommandName = "PatientID" CommandArgument = '<%# Eval("PatientID")%>' OnCommand="Button_Click" > 
       </dx:ASPxButton> 
      </DataItemTemplate> 
     </dx:GridViewDataButtonEditColumn>