我正在设计一种分层系统,如下所示:
合同
商品大师
商品
分商品
部分
其中每一个都在他们自己的页面上(现在)。用户从Contract.aspx页面开始。如果他们想要查看他们目前所在合同的主商品,他们将点击我设置的“ImageButton”,并作为命令参数传递ContractID(CommandArgument='<%# Eval("ContractID")%>'
)。这很有效 - 我进入了我的Master Commodity页面,主要商品已经过了我传入的ContractID。
这是我的问题:从Master Commodity页面导航到Commodity页面将(我认为)需要传递ContractID(所以我们只能查看我们正在进行的合同的内容),以及Master Commodity ID(所以我们只能看到与大宗商品有关的商品)。我尝试了以下内容:
CommandArgument='<%# Eval("ContractID") + ',' + Eval("MComID")%>'
,但正如您可能预期的那样,这不起作用。如果我可以像上面那样做一些像逗号一样的分隔符,我可以从那里开始使其工作。任何建议???
答案 0 :(得分:2)
麦克,
借助您自己建议的解决方案,您可以保留ImageButton并使用以下内容:
<%# string.Format("{0},{1}",Eval("value1"),Eval("value2"))%>
当天晚些时候,但是在这个帖子之后,我认为值得为其他人发表评论。
保罗。
答案 1 :(得分:0)
我决定将我的ImageButton更改为“a href ...”并将其用作我的href:
<%# string.Format("./Commodity.aspx?contractId={0}&MComID={1}, Eval("ContractId"), Eval("MComID"))%>
这样我就可以传递我需要的所有信息。
答案 2 :(得分:0)
建议在你的代码后面有一个方法,它返回一个格式良好的字符串
internal static string GetFormattedString(string sContractID, string sMcomID){
return String.Format("{0},{1}", sContractID , sMcomID);
}
然后您可以在控件中Eval
使用此功能。这样你就可以在代码中保留格式化逻辑,只需在那里修改它。如果在前端代码的不同控件(链接)中使用该信息,这是一种很好的做法。