Time of Update: 2018-12-07
參考《ASP.NET與SQL一起打包部署安裝》,這篇文章是針對VB.NET與SQL 一起打包的,但是我使用的是C#,當然只要修改一下主要安裝類庫就行了!C#的類庫代碼如下:DBCustomAction.csusing System;using System.Collections;using System.Data.SqlClient;using System.ComponentModel;using System.Configuration.Install;using
Time of Update: 2018-12-07
在我們的程式中,經常會有一些耗時較長的運算,為了保證使用者體驗,不引起介面不響應,我們一般會採用多線程操作,讓耗時操作在後台完成,完成後再進行處理或給出提示,在運行中,也會時時去重新整理介面上的進度條等顯示元,必要進,還要控制後台線程中斷當前操作。以前,類似的應用會比較麻煩,需要寫的代碼較多,也很容易出現異常。在 .net中,提供了一個組件
Time of Update: 2018-12-07
設定winform tooltip的位置一直沒有找到好的方法,還有箭頭的方向,其實這些功能tooltip都可以實現的。cs代碼 ToolTip tt = new ToolTip(); private void Form2_Load(object sender, EventArgs e) { //冒泡顯示 tt.IsBalloon = true; //就是這個方法 //msdn查過該方法定義:是當滑鼠放到制定控制項的時候來提示的,
Time of Update: 2018-12-07
說來慚愧,在大學的課程中,竟然沒有聽說過委託這個名稱。那麼今天我就帶著大家一起探討下委託和事件。咱們先來看下委託我主要從以下幾個方面講解1, 為什麼使用委託 2.什麼是委託
Time of Update: 2018-12-07
在學習多線程之前,我們先來看幾個概念:1,什麼是進程? 當一個程式開始運行時,它就是一個進程,進程包括運行中的程式和程式所使用到的記憶體和系統資源,當然一個程式也可能開啟多個進程。 而一個進程又是由多個線程所組成的。2.什麼是線程? 線程是程式中的一個執行流,每個線程都有自己的專有寄存器(棧指標、程式計數器等),但代碼區是共用的,即不同的線程可以執行同樣的函數。3,什麼是多線程?
Time of Update: 2018-12-07
最近做了幾道面試題,發現base關鍵字出的題目還比較多。所以在這裡針對base關鍵字做一個記憶體的剖析,希望日後可以用到。先看下面一道題目: 最後在main方法中執行個體化子類TestChild,並且調用其Show方法。問輸出結果是什嗎?TestChild child=new
Time of Update: 2018-12-07
public static void StartClient() { // Data buffer for incoming data. byte[] bytes = new byte[1024]; // Connect to a remote device. try { // Establish the remote endpoint
Time of Update: 2018-12-07
實現簡單計算功能的計算機程式碼:實現一個互動計算機 ß準系統如下:提示使用者分別輸入第一個數、第二個數、運算子號,然後給出計算結果;把剛才的結果作為下一次的運算元,繼續參加下一次的運算。 #include<iostream>ß#include<cmath>using namespace std;int main(){ int i,j,w=0; float m; char k; int js(int i,int j,char
Time of Update: 2018-12-07
代碼Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> C#操作SQL Float類型,資料會多很多小數,原來是C#的float和sql的float類型不一致 /// <summary> /// 資料庫中與C#中的資料類型對照 /// </summary> /// <
Time of Update: 2018-12-07
整體思路:射線法。①:先判斷點的X和Y座標和多邊形的Xmin,Xmax,Ymin,Ymax的關係。若超出了這四個值,則一定在多邊形外;②:若不符合上述條件,則繼續。向左做線段,線段的左頂點的X座標值一定要小於Xmin。然後判斷線段和多邊形的交點;若交點為偶數個,則在多邊形外;若交點為奇數個,則點在多邊形內;③:因為最後取的交點是按照Ipolyline和多邊形Polygon作得拓撲關係的交集,交集是IGeometry對象,其向IgeometryCollection對象跳轉,最後得到一個點擊Ipoi
Time of Update: 2018-12-07
首先提出一個問題:給你很多的姓名,讓你找出一個姓氏的所有人,用程式實現。這個程式用很多方法可以實現,這篇博文中,我們就利用委託和Lambda運算式的方法實現。首先把所有的姓名放到一個集合中 List<string> list = new List<string> { "田三濤", "劉起涵", "張曉軒", "田聖彤", "文筠彤", "劉起涵", "田優喬", "文嘉珊", "白田彤", "廖子棉", "張澤菲", "田贊鑫"
Time of Update: 2018-12-07
事件就是一個閹割版的委託。 事件就是一個外部不能訪問,並且只能使用“+=、-=”號添加委託的類成員。 為什麼事件要做成外部不能訪問? 如果事件可以被外部存取,那麼外部就可以繞過開發人員自己定義的介面,直接存取並調用委託,違反了物件導向封裝的思想。 為什麼事件要只能使用“-=、+=”? 因為如果使用者在某一地方使用了“=”號給事件賦值,那麼他會驚奇的發現之前添加的事件都被清空了.... 事件的本質,就是1個私人委託,和兩個add、reduce函數(類似屬性,實現+=、-=)
Time of Update: 2018-12-07
1. 概念(1) .NET/dotnet:一般指.netFrameWork架構,一種平台,一種技術。(2) C#(sharp):一種程式設計語言,可以開發基於.NET平台的應用。(3) Java既是一種技術有是一種程式設計語言。IDE(Integrated Development,整合式開發環境)C#中的注釋:對我們寫的程式進行注釋,注釋有三種: 第一種:單行注釋 以//開始,到本行末尾結束。第二種:多行注釋 /*開始,*/結束,之間的都為注釋第三種:文檔注釋 用於對類或者方法進行注釋。
Time of Update: 2018-12-07
前言:這篇部落格我主要說一下C#中泛型的使用,也就是List和Dictionary字典集合的使用,我在這裡說的主要說的是如何去使用,而不是長篇大論的去研究泛型的底層,但我們有一定程式的時候在研究,使學習的能夠很快的學習集合然後自己研究集合的一些進階用法,不在最後還列舉出了一些常用的小案例。泛型集合(1) 泛型集合就是不確定的集合,文法中有一個角括弧,裡面放什麼類型,這個集合就變成什麼類型(2)List 1)舉例說明:static void Main(string[]
Time of Update: 2018-12-07
當TreeView啟用checkboxes 方式的時候,當父節點選中的時候,它所有的子節點一起被選中;當父節點取消選擇的時候,它所有的子節點也取消選擇。實現起來,非常簡單,代碼如下:/// <summary>/// 假設treeview的name是 treeView1/// </summary>/// <param name="sender"></param>/// <param
Time of Update: 2018-12-07
需要引用 using ICSharpCode.SharpZipLib.Zip;調用:CreateZipFile("檔案路徑","壓縮路徑") private static void CreateZipFile(string filesPath, string zipFilePath) { if (!Directory.Exists(filesPath)) { MessageBox.Show("找不到 " +
Time of Update: 2018-12-07
public static void ExportToWord(DataGridView dgv, ProgressBar progress, SaveFileDialog savefile) { Microsoft.Office.Interop.Word.Document WordDoc = new Microsoft.Office.Interop.Word.Document(); Microsoft.Office.Interop.Word.Table WordTable; object
Time of Update: 2018-12-07
using System;using System.Collections.Generic;using System.Text;using System.Runtime.InteropServices;using System.Threading;using System.Collections;namespace Connection{ public class ConnectManager { const int S_OK = 0; const uint
Time of Update: 2018-12-07
原來的檔案路徑名FileOldPath; 新的檔案路徑名:FileNewPath, 那就可以用 File.Move(FileOldPath,FileNewPath) 或者File.Copy(FileOldPath,FileNewPath)
Time of Update: 2018-12-07
提出問題:在收貨系統中,常常要用到掃描槍掃描條碼輸入到TextBox,當條碼無法掃描時,需要手工輸入。如果是掃描槍輸入時,我們將自動去判讀條碼,而手工輸入時,最終需要加按斷行符號鍵確認後判讀條碼。這時候我們就要判斷輸入裝置是手工還是掃描槍。 嘗試的方法: 1.將TextBox屬性設為ReadOnly=true。結果:無法輸入。