2011-07-24 18 views
0

我是新手開發人員。我試圖模仿Windows記事本功能。我正在使用Windows窗體應用程序,語言是C#。C#.net 2.0中的TextEditor開發

我的問題是:

  1. 什麼是設計考慮的文本編輯器的發展?

  2. 如何在不使用框架textbox.Cuttextbox.Copy的情況下實現剪切和複製功能?

  3. 我已經編寫了打開文件的代碼,並且我正在尋找一種在用戶輸入時存儲數據的方法。我需要使用一些數據結構嗎?如果是這樣,請指導我如何做到這一點。

  4. 這是我寫的用來打開一個新文件的代碼。有沒有辦法改善這一點?當我打開一個新文件時,指針將不會出現,直到我按下該選項卡。

    TextBox txt = new TextBox(); 
    txt.Multiline = true; 
    txt.Dock = DockStyle.Fill;   
    panel1.Controls.Add(txt); 
    panel1.Focus();
  5. 是否有必要在記事本中使用圖形?如果是這樣,請幫我解決。

+1

你的問題太抽象了。請澄清你是否有任何問題無法解決。 – agibalov

+0

簡而言之,當您執行剪切操作時,如何確定字符串的開始和結束位置以及將其移動到緩衝區或剪貼板的位置。 – netShree

+0

隨意使用MSDN自己回答這些問題。 TextBox有一個屬性「SelectionStart」:http://msdn.microsoft.com/en-us/library/system.windows.forms.textboxbase.selectionstart.aspx然後,關於剪貼板:http://msdn.microsoft.com /en-us/library/system.windows.clipboard.aspx你的問題不值得在這裏提出。 – agibalov

回答

1

1>什麼是設計考慮到了文本編輯 開發完成。

  • 決定是否只想編輯一個文檔,或構建一個MDI(多文檔界面)。
  • 決定一個功能集;例如tabstop大小,行結束轉換,編碼選擇,甚至拼寫檢查。

2>如何實現剪切和不使用 框架給出textbox.Cut或textbox.Copy複製功能。

您需要閱讀約System.Windows.Clipboard。請注意,這需要.NET 3.5。

3>我寫的代碼用於打開文件,我在尋找一種方式來 存儲中的數據,而用戶輸入時,手段做我需要使用一些數據 結構或別的東西。如果是,請指導我如何做到這一點。

最簡單的方法是讓文本控件自己在您的Text屬性中存儲數據。你可能不需要自己存儲文本。

4>這裏是我寫的用來打開一個新文件的代碼。有沒有辦法 改善這一點,因爲當我打開新文件,指針將不會出現,直到我按下該選項卡。

而不是專注於面板,嘗試專注於文本框本身。

5>是否有必要使用圖形在記事本中。如果是的話,請幫我解決。

您可以構造一個全功能的文本編輯器,而無需觸摸自定義圖形或用戶繪製的控件。