2008-08-27 87 views
5

[我們有一個Windows Forms數據庫前端應用程序,其中可以用作CMS;客戶端創建結構,填充它,然後使用基於ASP.NET WebForms的站點將結果公佈在Web上。爲了增加靈活性,他們有時被迫將實際的HTML標記輸入到文本字段中,然後以數據庫中的varchar結尾。這種方式很有用,但它遠不是用戶友好的。]Windows窗體的WYSIWYG Markdown控件?

因此,有些客戶需要HTML的所見即所得編輯器。我想說服他們,他們會從使用更簡單的語言(即Markdown)中受益。理想情況下,我想要的是一個WYSIWYG編輯器。他們不需要桌子,或者其他任何複雜的東西。

一個粗略的搜索顯示a .NET Markdown to HTML converter,然後我們有a Windows Forms-based text editor that outputs HTML,但顯然沒有把兩者結合在一起。因此,我們仍然在那裏添加帶有標記的varchars,但至少它會是非常容易理解的,並且仍然可以輕鬆解析。

請問這是一個輸出Markdown的WYSIWYG編輯器,後來在ASP.NET中被解析成HTML--是否可行?有其他建議嗎?

回答

0

難道你只是使用相同的控制我堆棧溢出使用(我們都打入)---大規模殺傷性武器,只是存儲在VARCHAR的Markdown。然後,如上所述,使用.NET Markdown to HTML轉換器根據需要顯示HTML。傑夫在一個StackOverflow播客中更詳細地談到了這一點(不知道劇集編號)。

+0

OP顯式說明WINDOWS表單。 – nathanchere 2012-09-17 07:54:38

0

除了Jared:它在Episode 11 at the middle part。您可以下載它here

+0

這將是一個很好的評論(它是我的寵物狗,請不要親自帶它!) – 2009-01-30 12:10:29

1

你就不能使用相同的控制,我堆棧溢出使用(我們都是打字到)---大規模殺傷性武器,並且只存儲在VARCHAR的降價。

這是一個Web控件。輸入發生在Windows窗體中,因此不起作用。

0

@Soeren,

可以最肯定與Windows中的JavaScript編輯器降價嵌入IE窗體應用程序。

-1

RichTextBox控件

所以要使用降價,但希望用戶不知道嗎?這可能不是一個可實現的目標。我認爲Markdown的意義在於它是面向那些願意學習一些相當自然的語法,並以純文本編輯所有內容的作者(如維基百科),是否有純粹的所見即所得的編輯器可能......可能有些其他維基百科編輯人員必須來清理結果標記和格式化...)。如果你希望它對用戶是透明的(比如MS Word),Markdown可能不是你想要的,或者給你在這種情況下宣傳的好處。

輸入發生在Windows窗體

糟糕!現在我明白你的問題了。我想這取決於你的Windows窗體應用程序的外觀是否嵌入式IE控件像伸出的拇指一樣伸出。如果你嘗試它,你可能會發現你可以得到它的工作。[1]

在你的位置,我會嘗試這樣的事情[2]:

如果你不認爲那種安排會投奔可以和您的用戶(特別是純文本窗口中的所有編輯),那麼我認爲Markdown並不是您的特定應用程序的答案。如果您認爲您的用戶熱衷於編輯純文本的想法,那麼我敢打賭我們可以找到解決方案。請澄清?

賈裏德。

[1]我有成功滴一個IE HTML控制到一個項目嚴格顯示一些生成的結果作爲PDF(使用IE閱讀器插件如Adobe Reader或福昕)。在用戶不知道的是,GUI的那部分是一個IE瀏覽器,它只是顯示的PDF,可以打印和保存等

[2] ...但刪除邊框,使分裂的兩個觸摸控制嵌入式IE控制的所有四個邊緣,或者變得非常近......例如保持淺灰色或白色,並消除IE控件的任何邊界,以便與周圍的控件融合。也許把它放在它自己的標籤頁上,我挑戰一個非技術用戶告訴/關心它是HTML控件還是本地的。

我可能完全是錯的這一切(一會要看到這個動作,以確定它是否會工作),但它可能是比寫自己的互動降價編輯器更容易...

...實際上爲了實現您自己的C#Markdown編輯器,您可以在嵌入式IE控件旁邊放置一個文本編輯框,並通過獨立線程上的.NET Markdown-> HTML轉換器運行當前的Markdown,並在IE控件中替換HTML (假設Markdown-> HTML轉換器非常自由且強大,可以防止拋出任何異常)。

0

「所見即所得降價」實在是一種諷刺,因爲降價的整點是讓你對自然和直觀地寫標記語法,然後後處理成HTML,除非你的意思實際上正在例如**文本**並將其呈現爲**文本* *例如。這實際上是一種很酷的方式,但對於諸如編號和項目符號列表之類的東西會非常困難,因爲您必須執行所有的定位,但要根據實際的文本字符(例如'*'而不是子彈符號),並支持適當的文本輸入的定位,退格等

  • 例如,在這個項目列表
  • 子彈實際上必須是星號,
  • 和間距不會真的在那裏。

這當然值得關注,如果有人解決它。