欢迎访问 生活随笔!

ag凯发k8国际

当前位置: ag凯发k8国际 > 编程语言 > c# >内容正文

c#

c#——《c#语言程序设计》实验报告——windows桌面编程文件与流——简易记事本 -ag凯发k8国际

发布时间:2024/10/5 c# 27 豆豆
ag凯发k8国际 收集整理的这篇文章主要介绍了 c#——《c#语言程序设计》实验报告——windows桌面编程文件与流——简易记事本 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
  • 掌握文件类的使用;
  • 掌握文件流的操作;
  • 掌握二进制数据、文本数据的读写;
  • 继续应用wpf技术进行界面编程。
  • 写一个记事本程序:
  • (1)设计界面,向窗体添加下拉式菜单、多格式文本框(richtextbox)。

    (2)依次为“文件”下的“新建”、“打开”、“保存”菜单项的click事件添加事件处理函数。可以使用路由命令。

    (3)添加“格式”工具栏,可以设置所有文字的粗体、斜体、大小、颜色等样式。

    (4)实现文本文件的打开、编辑和保存功能;

    提示

    1、窗口可用dockpanel进行布局,让菜单和工具栏都位于顶部,即:

    dockpanel.dock="top"

    2、文本文件的编辑可以使用textbox控件。

    3、使用命令绑定,让菜单项和工具栏同时与一个操作相关联。

    在mainwindow.xaml的window标签下加:

       

    在菜单项添加:

            

    在工具栏添加:

               

    cs

    using system; using system.collections.generic; using system.io; using system.linq; using system.text; using system.threading.tasks; using system.windows; using system.windows.controls; using system.windows.data; using system.windows.documents; using system.windows.input; using system.windows.media; using system.windows.media.imaging; using system.windows.navigation; using system.windows.shapes; using microsoft.win32;namespace homework11 {/// /// mainwindow.xaml 的交互逻辑/// public partial class mainwindow : window{private bool _saved;private string title {set { title = value; }get { return title; }}public mainwindow(){initializecomponent();}private void newcommand_executed(object sender, executedroutedeventargs e){_saved = false;textrange range;range = new textrange(maintextbox.document.contentstart, maintextbox.document.contentend);range.text = "";}private void opencommand_executed(object sender, executedroutedeventargs e){openfiledialog dlg = new openfiledialog();dlg.defaultext = "*.txt";dlg.filter = "text files (*.txt)|*.txt";bool? result = dlg.showdialog();string str=null;if (result == true){string _filename = dlg.filename;textrange range;filestream fstream;if (file.exists(_filename)){title = _filename;range = new textrange(maintextbox.document.contentstart, maintextbox.document.contentend);fstream = new filestream(_filename, filemode.openorcreate);range.load(fstream, dataformats.xamlpackage);fstream.close();}}}private void savecommand_executed(object sender, executedroutedeventargs e){if (_saved) {return;}savefiledialog savefiledialog = new savefiledialog();savefiledialog.filter = "文本文件|*.txt|所有文件|*.*";savefiledialog.filterindex = 0;bool? result = savefiledialog.showdialog();if (result == true){string strfile = savefiledialog.filename;textrange range;filestream fstream;range = new textrange(maintextbox.document.contentstart, maintextbox.document.contentend);fstream = new filestream(strfile, filemode.create);range.save(fstream, dataformats.xamlpackage);fstream.close();_saved = true;mainstatusbar.text = "保存到" strfile;}}private void printcommand_executed(object sender, executedroutedeventargs e){printdialog pd = new printdialog();if ((pd.showdialog() == true)){//use either one of the belowpd.printvisual(maintextbox as visual, "printing as visual");pd.printdocument((((idocumentpaginatorsource)maintextbox.document).documentpaginator), "printing as paginator");}}private void maintextbox_textchanged(object sender, textchangedeventargs e){_saved = false;}private void linecommand_executed(object sender, executedroutedeventargs e){}private void fontselectcommand_executed(object sender, executedroutedeventargs e){}} }

    运行结果

  • 掌握文件类的使用;
  • 掌握文件流的操作;
  • 掌握二进制数据、文本数据的读写;
  • 继续应用wpf技术进行界面编程;
  • 掌握richtextbox控件的使用;
  • 掌握对话框的使用。
  • https://docs.microsoft.com/zh-cn/dotnet/framework/wpf/controls/richtextbox-overview#save-load-and-print-richtextbox-content

    https://blog.csdn.net/u011389706/article/details/55805476

    https://blog.csdn.net/weixin_43272781/article/details/106284772

    https://www.jianshu.com/p/9c30b5097a3f

    https://www.cnblogs.com/arxive/p/5725570.html

    总结

    以上是ag凯发k8国际为你收集整理的c#——《c#语言程序设计》实验报告——windows桌面编程文件与流——简易记事本的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得ag凯发k8国际网站内容还不错,欢迎将ag凯发k8国际推荐给好友。

    网站地图