2016-05-26 76 views
3

這是要健全真的很笨,但我正在一類在C#中,我們都跳過周圍的書,只從一個控制檯應用程序的工作。我們接受了一個練習,根據文章,名詞,動詞和介詞的數組構建句子,並在字符串的第一個單詞中首字母大寫。踢球者是,它希望輸出到一個文本框。那會不會是除了C#輸出到一個文本框

問題

一)我們已經繞過關於GUI的所有章節(即會在下一季度的C#類),並

B)我檢查了書,甚至堆棧溢出和其他在線資源,但無法弄清楚。

不幸的是,我的老師選擇了昨晚不討論這個練習在課堂上。由於他和我不在同一頁面(不是不喜歡,更多是化學反應),所以我試圖自己弄清楚這一點。而這個最終期限已經過去了,所以我現在只是要求個人的教化。

所以,這是我創建的代碼。我寫它輸出到控制檯只是爲了顯示我有問題的基本機制。我知道我必須在GUI窗口中創建一個帶有文本框的單獨窗體,但我無法弄清楚如何將輸出發送到文本框而不是控制檯。

using System; 
    using System.Collections.Generic; 
    using System.Linq; 
    using System.Text; 
    using System.Threading.Tasks; 

    namespace _16._4_StoryWriter 
    { 
     class StoryWriter 
     { 
      static void Main(string[] args) 
      { 
      string[] articles = { "the", "a", "one", "some", "any" }; 
      string[] nouns = { "boy", "girl", "dog", "town", "car" }; 
      string[] verbs = { "drove", "jumped", "ran", "walked", "skipped" }; 
      string[] preps = { "to", "from", "over", "under", "on" }; 

      string articleStory = ""; 
      string nounStory = ""; 
      string verbStory = ""; 
      string prepStory = ""; 

      Random random = new Random(); 


      for (int counter = 1; counter <= 10; ++counter) 
      { 
       int randomNext = random.Next(5); 
       articleStory = articles[randomNext]; 


       randomNext = random.Next(5); 
       nounStory = nouns[randomNext]; 

       randomNext = random.Next(5); 
       verbStory = verbs[randomNext]; 

       randomNext = random.Next(5); 
       prepStory = preps[randomNext]; 

       Console.WriteLine(UppercaseFirst(articleStory) + " " + nounStory + " " + verbStory + " " + prepStory + "."); 
      } // End For 

      Console.Read(); 
      } // End Main 

      static string UppercaseFirst(string s) // Borrowed from dotnetperls.com tutorial for making first letter uppercase 
      { 
      if (string.IsNullOrEmpty(s)) // Checks for an empty string 
      { 
       return string.Empty; 
      } 
      char[] a = s.ToCharArray(); // Creates array of characters from a string 
      a[0] = char.ToUpper(a[0]); // Selects value of zeroth position and changes to upper case 
    return new string(a); // Passes new string back 
      } // End method 

     } // End Class 
    } // End Namespace   
+0

我想我需要澄清我的問題的基礎上,兩個答案。我知道如何創建表單應用程序以及如何將文本框添加到表單。我的問題是,我在哪裏放置可執行代碼? Program.cs或Form1.cs?我如何「鏈接」兩者? – JBM

回答

3

創建Windows窗體應用程序項目啓動Visual Studio 2010.

在文件菜單上,指向新建,然後選擇項目。

出現「新建項目」對話框。

在已安裝的模板窗格中,展開Visual Basic或Visual C#和 然後選擇Windows。

上面中間窗格中,選擇下拉列表 目標框架。

在中間窗格中,選擇Windows窗體應用程序模板。

NoteNote Windows窗體應用程序模板在.NET Framework 4 目標默認情況下,客戶端配置文件。

在名稱文本框中,指定項目的名稱。

在位置文本框中,指定一個文件夾來保存該項目。點擊 OK。

Windows窗體設計器打開並顯示項目的Form1。

SOURCE

然後從工具箱拖動文本框,並將其放置在窗體上。

雙擊窗體上的任何位置,除了文本框,它將在窗體後面打開代碼,並且您將在窗體加載事件中。

地址:

textBox1.Text = "Your text to put in textbox";

在:

private void Form1_Load(object sender, EventArgs e) 
{ 
    textBox1.Text = "Your text to put in textbox"; 
} 

按F5

Youtube Form Youtube textbox

+0

我想我的問題還不夠清楚。我知道如何在Vis Studio 2015中創建一個表單,併爲該表單添加一個文本框。那麼問題就變成了,我在哪裏放置實際程序的代碼?在program.cs或Form1.cs中?在form.cs上的 – JBM

+0

請參閱「SOURCE」之後的更新部分 – Claudius

2

你只需要一個FormTextBoxForm的孩子:

var form = new Form{Width = 300, Height = 100, Text = "The form"}; 
var textbox = new TextBox{Parent=form, Size = form.ClientRectangle.Size, Multiline = true}; 

textbox.Text = "Your Text"; 

form.ShowDialog(); 

你還需要這using System.Windows.Forms的地方,並參照System.Windows.Forms.dll