目標:對於個人項目,我想用全屏命令行,十六進制編輯器,文本編輯器等來模擬一個老式的計算機界面。所有文字,無圖形。 (對於假想的計算機的模擬器/仿真器)C#+ WPF:文本模式相當於舊DOS庫或詛咒
起點:我已經發現控制檯模式不能被全屏瀏覽,但是我可以輕鬆地在WPF中使用WindowState = Maximized進行全屏顯示, WindowStyle =無。所以我可以製作一個全屏的TextBox。
問題:是否有一個現有的控件,模式或庫,用於基本寫入文本屏幕和從鍵盤讀取數據(而不是填寫和提交表單上的字段,比如文本框面向)?
我假設我需要製作自己的自定義控件而不是文本框,並構建一大類低級方法來定位光標,輸出字符,對輸入做出反應等。但是如果有一個經過驗證的方法或標準方法,我寧願用燃燒時間來重新發明一個常用的車輪。在過去的DOS時代,我會使用基於直接BIOS視頻調用,PEEK和POKE到視頻RAM以及鍵盤和鼠標輪詢的庫。當然,這不再適用,但標準控制檯例程也不適用。那裏已經有東西可以填補這個空白嗎?
澄清。在DOS時代,我們有東西像庫:
Scroll(3);
Write(24,1, "Your command has been queued for execution");
input = Prompt(25, 1, "Enter a command>");
,並在文檔編輯模式下,我們會做這樣的事情
key = WaitKey();
switch (key) {
case PGUP: Scroll(-24);
case PGDN: Scroll(24);
case LEFT: MoveCursor(-1,0);
case DOWN: MoveCursor(0,1);
// ...
}
等......這是諸如此類的事情,我正在尋找。有東西寫類,滾動提示等功能
+1看到你的程序一旦完成就會很有趣! =)Winforms的確有一個脫口秀課程,也許有一個WPF版本。,或者WPF控件的構建方式(不知道),你可以改變光標的外觀。 :http://msdn.microsoft.com/en-us/library/system.windows.forms.visualstyles.visualstyleelement.textbox.caret.aspx – gideon 2011-03-01 05:31:05