C#從零開始_自學C#、Visual Studio實境秀 25/ {轉型、async await (多工,多執行緒)



4:30 異步處理(不同步處理) async await (多工,多執行緒) http://bit.ly/2sEU82a 15:15 async (C# Reference)http://bit.ly/2uGq87H 7:00 12:00 如何:將字串轉換為數值 (C# 程式設計手冊)http://bit.ly/2tXLP5u 14:00 Explicit Numeric Conversions Table (C# Reference)http://bit.ly/2u7uKGS Implicit Numeric Conversions Table (C# Reference) http://bit.ly/2tXPyzY 14:30 C# Keywords 關鍵字 http://bit.ly/2sEZ07K var (C# Reference) 20:00 Exception.HResult 屬性http://bit.ly/2sUNSaR 23:10 Format寫法 25:10 Check the ErrorCode property Handling a COMException exception 26:00 COMException 類別 28:00 就是因為一開始最小化了 難怪部件造字全 檔案現不出來。 42:40 最小化 而忘了 最大化 才會視窗呈現灰色,而看不到文件,也沒有還原、放大等控制按鈕可用,只有關閉可用。 // d.ActiveWindow.WindowState = WdWindowState.wdWindowStateMinimize; // d.ActiveWindow.Visible = true; 34:30 用以下3個都可以,只不過用 Exception 須轉型成其子類型,才能用 ErrorCode 屬性 catch (COMException eHandle ) 1:55:00 //因為 ∵ COMException.ErrorCode Gets the HRESULT of the error.(繼承自 ExternalException。) //http://bit.ly/2tYgzU4 //catch (ExternalException eHandle ) //catch (System.Exception e ) 1:57:45 Late-bound arguments and Microsoft Office objects //http://bit.ly/2tYgzU4 37:50 以程式碼方式添加事件處理程序 ,兩種寫法都可以 Controls[j].Click+= picBoxClick;//較簡潔 Controls[j].MouseHover += new EventHandler( BjPictureBoxMouseHover); 42:40 其實這三式(statement)便可讓結果呈現在目前 d.ActiveWindow.Visible = true; d.ActiveWindow.WindowState = WdWindowState.wdWindowStateMaximize; d.Application.Activate(); 54:00 Form.Refresh 測試有效 ,重繪表單物件 frm2.Show();frm2.Refresh(); 1:06:00 部件篩選器」改進的進度。 1:12:00 除錯 word 未運行,只有〈4808字之部件.docm〉開啟時。 可見都是處理 InlineShape 時出錯。 1:27:50 文字處理果然沒問題,問題出在 InlineShape ! 1:30:20 別忘了用程式開啟的文件檔案。 2:03:50 在 Word 有訊息方塊出現時,造成 2:08:45 抓例外狀況,就看「使用者未處理的例外狀況」中,看是誰丟回的訊息,如: 「System.Runtime.InteropServices.COMException: 」就是「COMException」,如此便可以去宣告 COMException 類型的變數去讀取 ErrorCode 屬性值 如 1:42:40 自訂 Visual Studio 工具列 2:01:00 方法中不能宣告 static 變數 C# does not support static local variables (variables that are declared in method scope). http://bit.ly/2sQC7Co 2:36:10 goto 的標籤可以重複,只要在不同程式區塊中,{} 。 2:55:20 預設的鍵盤要是 Visual Basic 6 (套用下列其他鍵盤對應配置)才能用 Ctrl+Y 剪取整行 3:23:00 try catch 只是抓住某一行,看有沒有像VB一樣可以全局抓錯再一起判斷 ErrorCode 的 3:54:40 在跑部件造字表時不能和系統共用剪貼簿,要獨佔,才不會出現空缺空格空白。 PictureBox.Image 顯示不出來。 4:13:00 用 Range 就是不行,用 Selection 才可以,不知為何 南無阿彌陀佛 isp.Select();//https://tinyurl.com/ydby5v2x http://tinyurl.com/y7shs5uc Find an image in a resource file by name isp.Application.Selection.CopyAsPicture(); IDataObject data = Clipboard.GetDataObject(); // Create a bitmap from the data in the IDataObject. //Image = (Image)data.GetData(GetType());//https://tinyurl.com/ybth638l Image = (Image)data.GetData(DataFormats.Bitmap);//https://tinyurl.com/ybth638l https://tinyurl.com/y9eywq3a //isp.Range.CopyAsPicture(); //IDataObject data = Clipboard.GetDataObject(); //Image = (Image)data.GetData(DataFormats.Bitmap); 4:25:30 回覆 http://bit.ly/2sYuLI8 Because internal keyword is only valid in the same assembly . Refer to the Access Modifiers. And the derived class only when it's base class using the protected modifier could invoke it's base class member. 5:00:00 polymorphism http://bit.ly/2u8jtWO 5:49:40 Type 與 Class 的不同 5:59:00 base 用法和我們功過格很有關係 http://bit.ly/2uHkQIY 6:13:00 http://bit.ly/2uHtwPR Types (C# Programming Guide) Types, Variables, and Values 6:24:40 型別 的別 就好像 「性別」的別 6:27:25 6:33:20 可以用單引號? char firstLetter = 'C'; http://bit.ly/2uHtwPR 6:30:00 char (C# 參考) http://bit.ly/2u3mTJp 6:37:15 IsNumber 6:37:55 Char.IsPunctuation 判斷標點 Char.IsSeparator Char.IsWhiteSpace 判斷間隔或空格 Char.ToLower 轉小寫 大小寫 6:49:00 Char Struct http://bit.ly/2u8Stqn 7:31:00 StreamWriter sw = new StreamWriter(@".\chars2.txt"); 「@".\」應就是指定現在的路徑。 7:48:00 Visual Studio 的匯入設定功能應該還有 bug 8:20:00 竟然用 string s="" foreach 就可以正確擷取漢字了! 8:45:00 StringInfo TextElementEnumerator 再練習!


25/ {轉型、async  await (多工,多執行緒)

4:30 異步處理(不同步處理) async  await (多工,多執行緒) http://bit.ly/2sEU82a

15:15 async (C# Reference)http://bit.ly/2uGq87H

7:00

12:00 如何:將字串轉換為數值 (C# 程式設計手冊)http://bit.ly/2tXLP5u

14:00 Explicit Numeric Conversions Table (C# Reference)http://bit.ly/2u7uKGS Implicit Numeric Conversions Table (C# Reference) http://bit.ly/2tXPyzY

14:30 C# Keywords 關鍵字 http://bit.ly/2sEZ07K var (C# Reference)

20:00 Exception.HResult 屬性http://bit.ly/2sUNSaR

23:10 Format寫法

25:10 Check the ErrorCode property

Handling a COMException exception

26:00 COMException 類別

28:00 就是因為一開始最小化了 難怪部件造字全 檔案現不出來。 42:40  最小化 而忘了 最大化 才會視窗呈現灰色,而看不到文件,也沒有還原、放大等控制按鈕可用,只有關閉可用。

//    d.ActiveWindow.WindowState = WdWindowState.wdWindowStateMinimize;

//    d.ActiveWindow.Visible = true;

34:30 用以下3個都可以,只不過用 Exception 須轉型成其子類型,才能用 ErrorCode 屬性

catch (COMException eHandle )  1:55:00 //因為 ∵ COMException.ErrorCode Gets the HRESULT of the error.(繼承自 ExternalException。) //http://bit.ly/2tYgzU4

//catch (ExternalException eHandle )

//catch (System.Exception e )

1:57:45 Late-bound arguments and Microsoft Office objects //http://bit.ly/2tYgzU4

37:50 以程式碼方式添加事件處理程序 ,兩種寫法都可以

Controls[j].Click+= picBoxClick;//較簡潔

Controls[j].MouseHover += new EventHandler( BjPictureBoxMouseHover);

42:40 其實這三式(statement)便可讓結果呈現在目前

d.ActiveWindow.Visible = true;

d.ActiveWindow.WindowState = WdWindowState.wdWindowStateMaximize;

d.Application.Activate();

54:00 Form.Refresh 測試有效 ,重繪表單物件

frm2.Show();frm2.Refresh();

1:06:00 部件篩選器」改進的進度。 1:12:00 除錯 word 未運行,只有〈4808字之部件.docm〉開啟時。

可見都是處理 InlineShape 時出錯。 1:27:50 文字處理果然沒問題,問題出在 InlineShape !

1:30:20 別忘了用程式開啟的文件檔案。

2:03:50 在 Word 有訊息方塊出現時,造成

2:08:45 抓例外狀況,就看「使用者未處理的例外狀況」中,看是誰丟回的訊息,如:

「System.Runtime.InteropServices.COMException: 」就是「COMException」,如此便可以去宣告 COMException 類型的變數去讀取 ErrorCode 屬性值



1:42:40 自訂 Visual Studio 工具列



2:01:00 方法中不能宣告 static 變數 C# does not support static local variables (variables that are declared in method scope). http://bit.ly/2sQC7Co

2:36:10 goto 的標籤可以重複,只要在不同程式區塊中,{} 。

2:55:20 預設的鍵盤要是 Visual Basic 6 (套用下列其他鍵盤對應配置)才能用 Ctrl+Y 剪取整行

3:23:00 try catch 只是抓住某一行,看有沒有像VB一樣可以全局抓錯再一起判斷 ErrorCode 的

3:54:40 在跑部件造字表時不能和系統共用剪貼簿,要獨佔,才不會出現空缺空格空白。 PictureBox.Image 顯示不出來。

4:13:00 用 Range 就是不行,用 Selection 才可以,不知為何 南無阿彌陀佛

            isp.Select();//https://tinyurl.com/ydby5v2x http://tinyurl.com/y7shs5uc Find an image in a resource file by name

            isp.Application.Selection.CopyAsPicture();

            IDataObject data = Clipboard.GetDataObject();

            // Create a bitmap from the data in the IDataObject.

            //Image = (Image)data.GetData(GetType());//https://tinyurl.com/ybth638l

            Image = (Image)data.GetData(DataFormats.Bitmap);//https://tinyurl.com/ybth638l https://tinyurl.com/y9eywq3a



            //isp.Range.CopyAsPicture();

            //IDataObject data = Clipboard.GetDataObject();

            //Image = (Image)data.GetData(DataFormats.Bitmap);

4:25:30 回覆 http://bit.ly/2sYuLI8 Because internal keyword is  only valid in the same assembly . Refer to the Access Modifiers. And the derived class only when it's base class using the protected modifier could invoke it's base class member.

5:00:00 polymorphism http://bit.ly/2u8jtWO

5:49:40 Type 與 Class 的不同

5:59:00 base 用法和我們功過格很有關係 http://bit.ly/2uHkQIY

6:13:00 http://bit.ly/2uHtwPR Types (C# Programming Guide) Types, Variables, and Values

6:24:40 型別 的別 就好像 「性別」的別

6:27:25 6:33:20 可以用單引號? char firstLetter = 'C';  http://bit.ly/2uHtwPR

6:30:00 char (C# 參考)  http://bit.ly/2u3mTJp 6:37:15 IsNumber  6:37:55 Char.IsPunctuation 判斷標點 Char.IsSeparator Char.IsWhiteSpace 判斷間隔或空格 Char.ToLower 轉小寫 大小寫

6:49:00 Char Struct http://bit.ly/2u8Stqn

7:31:00 StreamWriter sw = new StreamWriter(@".\chars2.txt");  「@".\」應就是指定現在的路徑。

7:48:00 Visual Studio 的匯入設定功能應該還有 bug

8:20:00 竟然用 string s="" foreach 就可以正確擷取漢字了!

8:45:00 StringInfo TextElementEnumerator 再練習!

        String ss ="𫠫、𬚚、𬳕、𬺡";

        TextElementEnumerator s = StringInfo.GetTextElementEnumerator(ss);

        while (s.MoveNext())

        {

            Console.WriteLine("'{0}'", s.Current.ToString());//, Char.GetUnicodeCategory(Convert.ToChar(s.Current)));

            Console.WriteLine("'{0}'", s.GetTextElement());//此二式其實一樣,但 Current 傳回的是 object 所以必須 Tostring();

            s.MoveNext();

        }

10:32:00 TextElementEnumerator MoveNext 此法失敗!ElementIndex 索引值也會跳 0 4 且只枚舉二個漢字(第1、3個字) 不知何故。

10:41:30 改寫成功 在 Char_Struct-ConsoleApp Class2.cs 裡。目前只能用此法:

        String ss ="𫠫𬚚𬳕𬺡";

        StringInfo sinfos = new StringInfo(ss);

        for (int i = 0; i < sinfos.LengthInTextElements; i++)

        {

            lbl.Text += String.Format("[{0}]:\t{1}",i,sinfos.SubstringByTextElements(i,1))+"";

        }



9:13:00 Font 怎麼設!

9:38:00 真的要 Form Refresh 否則程式設定的字型、色彩等無法顯示。 10:29:00 先refresh 還不行呢,要 Show 完了才行。



10:34:00 Using Fully Qualified Names http://bit.ly/2u9CUyA



}


留言

熱門文章