激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - C# - 簡單實現winform編輯器

簡單實現winform編輯器

2022-01-20 13:57憂嘆ic C#

這篇文章主要教大家如何簡單實現winform編輯器,功能很簡單,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了winform編輯器的具體實現代碼,供大家參考,具體內容如下

簡單實現winform編輯器

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
using system;
using system.collections.generic;
using system.componentmodel;
using system.data;
using system.drawing;
using system.linq;
using system.text;
using system.threading.tasks;
using system.windows.forms;
using system.data.sqlclient;
using system.io;
 
namespace winformdemo
{
 public partial class form1 : form
 {
  public form1()
  {
   initializecomponent();
   //讓textbox2隱藏
   this.textbox2.visible = false;
   //讓datagridview1表中的最后一行空值隱藏掉
   this.datagridview1.allowusertoaddrows = false;
  }
  sqlconnection con = new sqlconnection();
  sqlcommand com = new sqlcommand();
  openfiledialog open = new openfiledialog();
  /// <summary>
  /// 行
  /// </summary>
  string clickrow = "";
  /// <summary>
  /// 列
  /// </summary>
  string clickcells = "";
  /// <summary>
  /// 行和列相加的字符串
  /// </summary>
 
  string sqllanding = "server=.;uid=sa;pwd=123456789;database=myfirstdemo";
  private void datagridview1_cellcontentclick(object sender, datagridviewcelleventargs e)
  {
   //獲取正在點擊的行和列。
   clickrow = this.datagridview1.rows[e.rowindex].cells[0].value.tostring();
   clickcells = this.datagridview1.rows[e.rowindex].cells[1].value.tostring();
  }
 
  private void form1_load(object sender, eventargs e)
  {
   selectinfo();
  }
  public void selectinfo()
  {
   //斷開式鏈接查看數據庫數據
   con.connectionstring = sqllanding;
   com.commandtext = "select name as 文件名,txtlujing as 文件路徑 from txtbianjiqi";
   com.connection = con;
   dataset ds = new dataset();
   sqldataadapter sda = new sqldataadapter(com);
   sda.fill(ds);
   this.datagridview1.datasource = ds.tables[0];
  }
  private void 打開toolstripmenuitem_click(object sender, eventargs e)
  {
   string filepath = clickcells + clickrow;
   this.textbox2.visible = true;
   try
   {
    //只讀流;
    filestream fss = new filestream(filepath, filemode.openorcreate, fileaccess.read);
    streamreader sww = new streamreader(fss, encoding.default);
    textbox2.text = sww.readtoend();
    sww.close();
    fss.close();
   }
   catch (exception ex)
   {
    //如果沒有選擇路徑提示出一句話;
    messagebox.show("查看路徑錯誤:" + ex.message);
   }
  }
 
  private void 保存toolstripmenuitem_click(object sender, eventargs e)
  {
   string filepath = clickcells + clickrow;
   try
   {
    //只寫流;
    filestream fss = new filestream(filepath, filemode.create, fileaccess.write);
    streamwriter sww = new streamwriter(fss, encoding.default);
    sww.write(textbox2.text);
    sww.close();
    fss.close();
    messagebox.show("保存成功!");
   }
   catch (exception ex)
   {
    //如果沒有選擇路徑提示出一句話;
    messagebox.show("保存路徑錯誤:" + ex.message);
   }
   this.textbox2.visible = false;
  }
 
  private void 新建toolstripmenuitem_click(object sender, eventargs e)
  {
   this.textbox2.text = "";
   string localfilepath = "";
   string filenameext = "";
   string flie = "";
   savefiledialog savefiledialog = new savefiledialog();
   //打開默認的文件目錄
   savefiledialog.initialdirectory = "d:\\\\text\\";
   //文件后綴名
   savefiledialog.filter = "文本文件(*.txt)|*.txt|所有文件(*.*)|*.*";
   savefiledialog.filterindex = 2;
   string lujing = savefiledialog.initialdirectory;
   if (savefiledialog.showdialog() == dialogresult.ok)
   {
    flie = savefiledialog.filename;
    //文件目錄名
    localfilepath = savefiledialog.filename.tostring();
    //截取文件名字
    filenameext = localfilepath.substring(localfilepath.lastindexof("\\") + 1);
   }
   string sql = "select name from txtbianjiqi";
   sqlcommand co = new sqlcommand(sql, con);
   sqldataadapter da = new sqldataadapter(co);
   dataset dss = new dataset();
   da.fill(dss);
   //循環判斷傳入的表中name
   for (int i = 0; i < dss.tables[0].rows.count; i++)
   {
    //定一個變量去接獲取出來name
    string ss = dss.tables[0].rows[i][0].tostring();
    //判斷對話框里輸入的值是否與查出來的name相同
    if (filenameext == ss)
    {
     messagebox.show("文件已更改!");
     return;
    }
   }
   try
   {
    //只寫流
    filestream fs = new filestream(flie, filemode.create, fileaccess.write);
    streamwriter sw = new streamwriter(fs, encoding.default);//對話框另存為。
    sw.write(textbox2.text);
    sw.flush();
    fs.close();
    con.connectionstring = sqllanding;
    //往數據庫添加 文件名和路徑名 sql語句
    com.commandtext = string.format("insert into txtbianjiqi(name,txtlujing)values('{0}','{1}')", filenameext, lujing);
    com.connection = con;
    con.open();
    int insertinto = convert.toint32(com.executescalar());
    if (insertinto > 0)
    {
     messagebox.show("操作失??!請重試。");
    }
    else
    {
     messagebox.show("添加成功!");
     this.textbox2.visible = false;
    }
   }
   catch (exception ex)
   {
    messagebox.show("添加日志失?。?quot; + ex.message);
   }
   con.close();
   selectinfo();
  }
 
  private void 刪除toolstripmenuitem_click(object sender, eventargs e)
  {
   con.connectionstring = sqllanding;
   //從數據庫刪除正在點擊的文件名
   com.commandtext = string.format("delete from txtbianjiqi where name='{0}'", clickrow);
   com.connection = con;
   con.open();
   dialogresult dr = messagebox.show("確認刪除?", "提示", messageboxbuttons.okcancel, messageboxicon.information);
   if (dr == dialogresult.ok)
   {
    int insertinto = convert.toint32(com.executescalar());
    if (insertinto > 0)
    {
     messagebox.show("操作失誤!!");
    }
    else
    {
     //file.delete(clickcells + clickrow);刪除windows里的文件,括號里是要刪除文檔的路徑。
     file.delete(clickcells + clickrow);
     messagebox.show("刪除成功!");
    }
   }
   con.close();
   selectinfo();
  }
 
  private void 退出toolstripmenuitem_click(object sender, eventargs e)
  {
   this.close();
  }
 
 }
}

就是寫了一個挺簡單的在winform里進行填寫文本,里面用到的ado.net來鏈接數據庫,在新建文本的時候需要寫入.txt后綴名,打開或者是刪除的時候需要先點擊一下文本名。 寫的不足請見諒!

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:http://www.cnblogs.com/shigezhuang/archive/2017/08/21/7406131.html

延伸 · 閱讀

精彩推薦
  • C#C#裁剪,縮放,清晰度,水印處理操作示例

    C#裁剪,縮放,清晰度,水印處理操作示例

    這篇文章主要為大家詳細介紹了C#裁剪,縮放,清晰度,水印處理操作示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    吳 劍8332021-12-08
  • C#C#通過KD樹進行距離最近點的查找

    C#通過KD樹進行距離最近點的查找

    這篇文章主要為大家詳細介紹了C#通過KD樹進行距離最近點的查找,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    帆帆帆6112022-01-22
  • C#C#實現XML文件讀取

    C#實現XML文件讀取

    這篇文章主要為大家詳細介紹了C#實現XML文件讀取的相關代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    Just_for_Myself6702022-02-22
  • C#C# 實現對PPT文檔加密、解密及重置密碼的操作方法

    C# 實現對PPT文檔加密、解密及重置密碼的操作方法

    這篇文章主要介紹了C# 實現對PPT文檔加密、解密及重置密碼的操作方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下...

    E-iceblue5012022-02-12
  • C#WPF 自定義雷達圖開發實例教程

    WPF 自定義雷達圖開發實例教程

    這篇文章主要介紹了WPF 自定義雷達圖開發實例教程,本文介紹的非常詳細,具有參考借鑒價值,需要的朋友可以參考下...

    WinterFish13112021-12-06
  • C#Unity3D實現虛擬按鈕控制人物移動效果

    Unity3D實現虛擬按鈕控制人物移動效果

    這篇文章主要為大家詳細介紹了Unity3D實現虛擬按鈕控制人物移動效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一...

    shenqingyu060520232410972022-03-11
  • C#C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題實例

    C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題實例

    這篇文章主要介紹了C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題,簡單描述了訪問者模式的定義并結合具體實例形式分析了C#使用訪問者模式解決長...

    GhostRider9502022-01-21
  • C#深入解析C#中的交錯數組與隱式類型的數組

    深入解析C#中的交錯數組與隱式類型的數組

    這篇文章主要介紹了深入解析C#中的交錯數組與隱式類型的數組,隱式類型的數組通常與匿名類型以及對象初始值設定項和集合初始值設定項一起使用,需要的...

    C#教程網6172021-11-09
主站蜘蛛池模板: 国产精品一区二区在线 | 全黄性性激高免费视频 | 久久久久久久.comav | 欧美久久久一区二区三区 | 91av在线免费播放 | 亚洲国产一区二区三区 | 看黄在线 | 视频在线中文字幕 | 美女扒开腿让男生桶爽网站 | 日韩app | 午夜精品久久久久久久96蜜桃 | 欧美黄色大片免费观看 | 久久777国产线看观看精品 | 天天都色 | 91看片淫黄大片欧美看国产片 | 国产 一区 | 日本网站一区 | 欧美一级鲁丝片免费看 | 性aaa| 久久精品高清 | 欧美日韩亚州综合 | 国人精品视频在线观看 | 日本在线视频免费 | 国产精品自拍99 | 水多视频在线观看 | 美女亚洲综合 | 九九视频精品在线观看 | 亚洲国产精品久久久久婷婷老年 | 国产一国产精品一级毛片 | 日韩精品一区二区亚洲 | 羞羞的视频免费观看 | 亚洲精品久久久久久久久久 | 一区二区三区日韩精品 | 欧美乱淫 | 久草最新网址 | 4p一女两男做爰在线观看 | 亚洲一区二区三区在线看 | 一级@片| 国内精品一级毛片免费看 | 337p日本欧洲亚洲大胆精蜜臀 | 欧美在线观看黄色 |