我有一个包含一些html的变量。我现在只是把它放在页面上的文字上,而且它工作正常。用链接替换html中的文本
现在让我们说每次出现“FISH”这个词时,我想用一个可以做某事的链接替换这个词。
我可以用正则表达式找到FISH这个词的所有出现,并用一些东西(html,文本)替换它。我也知道如何使用命令名等linkutton等
但我怎么能把linkbutton在html中并显示它?
是否有另一种解决这个问题的方法,我应该看看?
我有一个包含一些html的变量。我现在只是把它放在页面上的文字上,而且它工作正常。用链接替换html中的文本
现在让我们说每次出现“FISH”这个词时,我想用一个可以做某事的链接替换这个词。
我可以用正则表达式找到FISH这个词的所有出现,并用一些东西(html,文本)替换它。我也知道如何使用命令名等linkutton等
但我怎么能把linkbutton在html中并显示它?
是否有另一种解决这个问题的方法,我应该看看?
您必须将您的文本解析为一组控件。
这里有一个简单的解决方案(中的IndexOf代替正则表达式)
string text = "some html FISH some html";
string fish = "FISH";
List<Control> controls = new List<Control>();
int lastIndex = 0;
int index = 0;
while((index = text.IndexOf(fish, index)) != -1)
{
string s = text.Substring(lastIndex, index);
LiteralControl literal = new LiteralControl(s);
controls.Add(literal);
LinkButton lb = new LinkButton();
lb.CommandName = "whatever";
controls.Add(lb);
}
foreach(Control c in controls)
{
somePanel.Controls.Add(c);
}
名单是没有必要的,因为你可以直接添加到面板控件集合
谢谢。 我决定走另一条路线,详见我对原始任务的评论。 – Kjensen 2009-08-19 18:19:30
会有什么LinkButton的呢? – Lazarus 2009-08-19 16:09:22
不只是重定向到一个链接,我怀疑是你在钓鱼。 :) 这是一些内容管理,用户需要插入“购买”链接的能力。 我可能会考虑一个解决方案,我只是用另一个页面的链接来替换,它只是购买东西 - 从那时起我可以用纯html代替 - 而不是一个linkbutton。 – Kjensen 2009-08-19 16:22:45