2009-08-19 4 views
0

일부 html을 포함하는 변수가 있습니다. 나는 현재 그것을 페이지의 리터럴에 넣었으며 정상적으로 작동합니다.html로 된 텍스트를 링크 버튼으로 바꾸기

이제 "FISH"라는 단어가 나타날 때마다 해당 단어를 무언가를하는 linkbutton으로 바꾸고 싶습니다.

정규식을 사용하여 FISH라는 단어를 모두 찾을 수 있으며 무엇인가 (html, text)로 바꿀 수 있습니다. commandname 등으로 linkutton을 만드는 방법도 알고 있습니다.

하지만 어떻게 html에 linkbutton을 두어 표시 할 수 있습니까?

이 문제에 대한 다른 접근 방법이 있습니까?

+0

의 LinkButton 무엇을 할 것인가를 직접 추가 할 수 있습니다로

여기,

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); } 

목록 (같이 IndexOf 대신 정규식의) 간단한 솔루션이 필요하지 않습니다? – Lazarus

+0

링크로 리디렉션하는 것만으로는 아닙니다. 나는 당신이 낚시하고있는 것으로 의심합니다. :) 사용자가 "구매"링크를 삽입 할 수 있어야하는 일부 콘텐츠 관리 용입니다. 솔루션을 고려해 볼 수 있습니다. 여기서는 단순히 다른 페이지로 연결되는 링크로 바꾸기 만합니다. 그저 구매 물건 만 남기 때문입니다. 링크 버튼이 아닌 일반 html로 바꿀 수 있습니다. – Kjensen

답변

1

텍스트를 컨트롤 집합으로 구문 분석해야합니다. 당신은 패널 컨트롤 컬렉션

+0

감사합니다. 원래 퀘스트에 대한 내 의견에 자세히 설명 된대로 다른 경로로 이동하기로 결정했습니다. – Kjensen

관련 문제