说明:本人不是.net/Html/Ajax/Jquery....高手,所以经常用C#做一些这些技术能做的事情!本文仅用来说明如何简化设计之用。如果出现具体技术问题,请大家按自己的实际情况理解。
假设想在屏幕上做这样一个功能(而且有很多这样的需要):
在当前页面http://localhost:53979/Agile/StoryBoard/TeamStoryBoard?teamID=103中有一个链接:
链接通往http://localhost:53979/Agile/StoryBoard/TeamStoryBoard?teamID=103&highlight=OnBoard
点一下前往此页面,而链接外观变成:
前面的图标、文字发生变化,而后面的[取消]的url变成:http://localhost:53979/Agile/StoryBoard/TeamStoryBoard?teamID=103
这个参数的差异,将产生若干显示上的变化,具体不说了,估计大家也遇到过这种情况。
一种简单的做法是用JQuery直接调整显示,不过我们还有一些特殊的需要,需要重新组织Model,所以现在是用Url实现的。
下面看看如何用一行代码实现这个功能。
注意实际需求五花八门,我们未来也会换技术方案比如Jquery,这里仅仅作为例子说明。但无论用什么技术,这里仍然是1行代码,等等说明为什么可以这么确定。
@MFCUI.ImageLink("突出显示故事板上的状态", this.MergeParameter("highlight", "OnBoard"), displayAsText: !String.IsNullOrEmpty(this.ParameterOf("highlight")) , displayAxTextUseCheckIcon : true) if (!String.IsNullOrEmpty(this.ParameterOf("highlight"))) { @MFCUI.Link("[取消]", this.MergeParameter("highlight", null)) }