原创 Xml文件操作範例
Xml文件的操作總共有兩套Api XmlDocument和XDocument,以下範例中包括將泛型集合寫入到Xml文件中的範例 using System.Windows.Forms; using System.Xml; namespace
原创 .NET Framework2.0和.NET Framework4.0兼容的方法(不同版本的.NET Framework兼容方法)
<?xml version="1.0" encoding="utf-8" ?> <configuration> <startup useLegacyV2RuntimeActivationPolicy="true"> <su
原创 DataGridview的Cells焦點不釋放無法獲取更新的值
在對datagridview的數據進行編輯時,如果鼠標的焦點沒有釋放的話會提示無數據,這時候需要在該動作開始的時候,添加 this.Validate(); 使正在獲得焦點的Cells失去焦點
原创 List集合已經修無法執行枚舉操作
在foreach循環中如果需要list泛型進行操作的話,直接使用list會報錯,可以使用ToArray()方法; List<string> list_temp=new List<string>(){"1","2","3","4"}; fo
原创 小數取整的方法
Math.Round:四捨五入取整 【比如1.49取整後爲1 1.50取整後爲2】 Math.Ceiling:向上取整,只要有小數都加1 【比如1.01取整後爲2】 Math.Floor:向下取整,總是捨去小數 【比如
原创 多編程注意 事項
1.多線程數據的輸出 lambda 表達式是向線程傳遞數據的最強大的方法。然而必須小心,不要在啓動線程之後誤修改被捕獲變量(captured variables)。例如,考慮下面的例子: for (int i = 0; i < 10;
原创 多線程-----控件賦值的方法(C#的回調機制)
//定義回調 private delegate void setTextValueCallBack(int value); //聲明回調 private setTextVa
原创 同步和異步簡述(1)
1.同步異步是對方法執行順序的描述 同步(sync):等待上一行執行完畢之後,纔會進入下一行,會阻塞方法的執行,會卡住界面,只有一個線程在計算,方法計算是有序的 異步(async):不會等待方法的完成,會直接進入下一行,是非阻塞的,不會卡
原创 多線程1--Abort和Interrupt方法講解及代碼範例
1.Abort()方法:Abort掛起線程後相當於完全關閉該線程,該線程將不會被喚醒 //Interrupt掛起線程,被掛起的線程可以喚醒 static void Main(string[] args) {
原创 c#中的dataGridView實現enter鍵自增的功能
在編程的過程中爲了讓用戶使用方便輸入,dataGridView的自由編輯是很必要的,用戶如果想直接輸入一個數字後,一直按enter鍵,其餘的自動生成,需要這樣做,如下: dataGridView是默認不支持:keypress事件的,所以需
原创 獲取datagirdview被選擇的當前列的方法
datagirdview的列屬性中好像沒有像當前行的選擇currentRow方法,可以通過單元格的方法來進行: dgv.currentCell.columnIndex
原创 TabControl和DataGridView的使用
1.不同的page的頁面的name屬性可以進行判斷,k如下: TabControl.SelectedTab.Name.equals("name"); 2.dataGridview選擇某一行的實現方法:、 dgv.column[0].sel
原创 多線程學習1 C#
一:線程的基本知識 1.Suspend:用於掛起線程 Resume:用於喚醒線程,由於線程的執行情況不可預知,所以使用掛起和喚醒容易發生死鎖的情況 2.join():阻塞調用線程,直到該線程終止 3.Abort:拋出ThreadAbo
原创 Indexof與Substring的用法
Substring通常和indexof(或者lastindexof)來截取字符串 例如:截取"_",後面的字符indexof()的開始位置需要加1,後面的長度需要減1 因爲index計算時第一個字符爲位置0,,而下劃線後面的長度需要加1來
原创 向datagridview中遍歷添加數據
當新加了一個datagridview時,向該datagriview賦初值的時候,應該按照以下的 方法添加數據,否則報錯 for (int i = 0; i < 8; i++) { i