0

我有这样的网址:DossierSoin_Fiche.aspx?SoinId=1

我怎样才能将这个 SoinId 传递给 dx:ASPxPopupControl

<dx:ASPxPopupControl ID="ASPxPopupControl_Surveill"
ContentUrl="~/PopUp/Surveillance.aspx?SoinId=<%=SoinId %>"
?

提前谢谢你

PS:我不能使用后面的代码,因为它会重新加载页面,然后我会丢失没有保存在数据库中的数据。我改用回调,所以我需要在 aspx 上而不是在 aspx.cs 上传递这个查询字符串值

4

5 回答 5

1

创建一个属性“SoinID”(如果你还没有)

protected string SoinId  {get;set;}

(修饰符的类型取决于 OP,也可以是public)。

然后,为您的属性分配一个值page_load

SoinId = Request.QueryString["SoinID"];

如果您像这样使用它,您的 .aspx 代码可以保持不变。

于 2012-09-24T14:06:36.747 回答
1

在您的容器代码隐藏中:

protected string SoinId
{
   get
   {
      return Request["SoinId"];
   }
}

并使用您拥有的代码。

于 2012-09-24T14:06:44.110 回答
0

只需将值传递给页面 CodeBehind 中的公共属性即可。

ASPxPopupControl_Surveill.ContentUrl = ...

[感谢 rs 进行编辑。]

于 2012-09-24T14:04:10.713 回答
0

选项 A:

1) 在您的 aspx 页面范围内声明一个名为 SoinId 的受保护变量。

2) 在 Page_Load 事件中,添加:

if(!Request.QueryString["SoinId"]==null)
{
   SoinId = Request.QueryString["SoinId"];
}

选项 B:

用这个替换你的 aspx 代码:

<dx:ASPxPopupControl ID="ASPxPopupControl_Surveill" 
ContentUrl="~/PopUp/Surveillance.aspx?SoinId=<%=Request.QueryString["SoinId"] %>">

编辑:考虑使用其他同事建议的属性。它更优雅。

于 2012-09-24T14:07:36.963 回答
0

我想你可以在后面的代码中分配值。

例如;

ASPxPopupControl_Surveill.ContentUrl = "~/PopUp/Surveillance.aspx?SoinId=" + Request["SoinId"].ToString();
于 2012-09-24T14:08:48.100 回答