[英]How to show cursor in unfocused WinForms TextBox/RichTextBox?
[英]Replacing a WinForms TextBox with a RichTextBox
我有一個包含TextBox的Windows窗體應用程序。 我想用新的RichTextBox 替換特定的TextBox。 如果我從設計器中刪除有問題的TextBox,Visual Studio 2012是否會自動刪除任何引用文本框的代碼?
有沒有辦法在不破壞已經存在的代碼的情況下優雅地執行此操作?
我假設一種方法是在cs文件中進行字符串替換,甚至包括Designer.cs文件,並找到包含控件名稱(txtQuestion)的任何字符串,並將其替換為新的RichTextBox控件的名稱。
我希望Visual Studio有一個更簡單的方法來做到這一點。
我不知道一個真正簡單的方法來做到這一點。 也就是說,手動完成它應該不是很復雜:
TextBox
更改為RichTextBox
。 Name
屬性,VS將自動重構代碼引用那個領域。 明確引用該控件字段的任何代碼都將自動更新。 sender
參數而不是僅僅引用字段(某些東西)當例如相同的事件處理程序與多個控件一起使用時發生的情況)。 那些地方,你必須自己追蹤並改變它被分配到正確類型的演員和變量。 請注意,無論如何,IDE都不具備可靠地執行該工作的實用方法。 很少有TextBox
成員,它們不僅僅是TextBoxBase
成員的繼承或覆蓋, TextBoxBase
是TextBox
和RichTextBox
之間共享的基類,所以所有實際使用現在是RichTextBox
的字段的代碼都應該“正常工作” ”。 我無法想到任何可能的例外情況,但如果它們存在,它們應該很少,並且只需編譯代碼就很容易找到。
它可能像ReSharper的一個工具,可以讓上面的一些更容易。 我不確定......我自己不用它。 但如果上述內容看起來過於繁瑣,您可能會看看他們是否有試用版,看看它是否有助於這種情況。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.