2009-08-19 6 views
0

私はいくつかのhtmlを含む変数を持っています。私は現在、それをページ上のリテラルに入れているだけで、うまくいきます。htmlのテキストをリンクボタンに置​​き換える

「FISH」という単語が出現するたびに、その単語を何かするリンクボタンに置​​き換えたいとします。

正規表現でFISHという単語がすべて見つかって、何か(html、textなど)に置き換えることができます。私はまたcommandname等でlinkuttonを作る方法を知っています。

しかし、どのように私はHTMLにlinkbuttonを入れてそれを表示できますか?

この問題に対する別のアプローチがありますか、検討していますか?

+0

に直接追加できるようリストは、必要ではないのか? – Lazarus

+0

リンク先にリダイレクトするだけではなく、あなたが釣っているものと思われます。 :) これは、ユーザーが「購入」リンクを挿入する必要があるコンテンツ管理のためのものです。 解決策を考えてみましょう。ここでは、別のページへのリンクで置き換えています。これは単に購入用のものです。それ以来、リンクボタンではなくプレーンhtmlで置き換えることができます。 – Kjensen

答えて

1

テキストを一連のコントロールに解析する必要があります。

ここでは簡単な解決策(代わりに正規表現の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); 
} 

あなたはLinkBut​​tonコントロールは何をしますパネルコントロールコレクション

+0

ありがとうございます。 元のクエストについての私のコメントで詳しく述べられているように、私は別のルートに行くことに決めました。 – Kjensen

関連する問題