`
lindexi-gd
  • 浏览: 139944 次
社区版块
存档分类
最新评论

WPF 快捷键读写txt

 
阅读更多

因为git提交需要写这次做的,所以我想弄个东西来帮我写

WPF可以使用快捷键,快捷键主要使用InputBindingsWPF读写文件很简单

我每次都要写

第一句标题

之后就是我写的修改

然后加上我名字

加上时间

有一次我修改了函数f

删除一个函数

标题是我做了工具

我需要写:

#我做了工具

修改函数f

删除函数

林德熙201631616:43:40

这样每次写都需要加#我的名字,于是我就做了个软件

点击确定



我可以在工具.txt



我可以复制里面内容,这样可以在一个不想使用git的,直接看到每天我在做

每次按确定,我觉得还是做快捷键,做了alt+enter就是放在工具.txt

快捷键

App.xaml

<Application.Resources>

<RoutedUICommandx:Key="quedin"Text="确定"></RoutedUICommand>

</Application.Resources>

MainPage.xaml

使用快捷键

<Window.InputBindings>

<KeyBindingModifiers="Alt"Key="Enter"Command="{StaticResourcequedin}"></KeyBinding>

</Window.InputBindings>

我们把这个命令需要按下的键Modifiers="Alt"如果需要按ctrl+alt可以Modifiers="Control+Alt"

后台写快捷键使用保存

privatevoidkey(objectsender,RoutedEventArgse)

{

view.text=text.Text;

view.Storage();

}

TextBoxbinding是失去焦点更新,我不想去改

<Window.CommandBindings>

<CommandBindingCommand="{StaticResourcequedin}"Executed="key"></CommandBinding>

</Window.CommandBindings>

把文件保存

using(FileStreamtemp=newFileStream(file,FileMode.Append))

{

byte[]buffer=Encoding.Default.GetBytes(text);

intn=buffer.Length;

temp.Write(buffer,0,n);

text="";

}

我使用Depend绑定文本,因为最后的text需要在后台修改,而view绑定是viewModel,前台和后台数据变化直接,可以前台使用

#region

usingSystem.Windows;

usingSystem.Windows.Data;

#endregion

namespace跨境工具箱

{

publicclassviewModel:DependencyObject

{

publicviewModel()

{

_model=newmodel();

Bindingbind=newBinding("text")

{

Source=_model,

Mode=BindingMode.TwoWay

};

BindingOperations.SetBinding(this,text_property,bind);

bind=newBinding("name")

{

Source=_model,

Mode=BindingMode.TwoWay

};

BindingOperations.SetBinding(this,name_property,bind);

bind=newBinding("time")

{

Source=_model,

Mode=BindingMode.TwoWay

};

BindingOperations.SetBinding(this,time_property,bind);

bind=newBinding("reminder")

{

Source=_model,

Mode=BindingMode.TwoWay

};

BindingOperations.SetBinding(this,reminder_property,bind);

bind=newBinding("file")

{

Source=_model,

Mode=BindingMode.TwoWay

};

BindingOperations.SetBinding(this,file_property,bind);

}

publicstaticreadonlyDependencyPropertyfile_property=DependencyProperty.Register(

"file",typeof(string),typeof(viewModel),newPropertyMetadata(default(string)));

publicstaticreadonlyDependencyPropertyreminder_property=DependencyProperty.Register(

"reminder",typeof(string),typeof(viewModel),newPropertyMetadata(default(string)));

publicstaticreadonlyDependencyPropertytime_property=DependencyProperty.Register(

"time",typeof(bool),typeof(viewModel),newPropertyMetadata(default(bool)));

publicstaticreadonlyDependencyPropertyname_property=DependencyProperty.Register(

"name",typeof(string),typeof(viewModel),newPropertyMetadata(default(string)));

publicstaticreadonlyDependencyPropertytext_property=DependencyProperty.Register(

"text",typeof(string),typeof(viewModel),newPropertyMetadata(default(string)));

publicstringfile

{

set

{

SetValue(file_property,value);

}

get

{

return(string)GetValue(file_property);

}

}

publicstringreminder

{

set

{

SetValue(reminder_property,value);

}

get

{

return(string)GetValue(reminder_property);

}

}

publicbooltime

{

set

{

SetValue(time_property,value);

}

get

{

return(bool)GetValue(time_property);

}

}

publicstringname

{

set

{

SetValue(name_property,value);

}

get

{

return(string)GetValue(name_property);

}

}

publicstringtext

{

set

{

SetValue(text_property,value);

}

get

{

return(string)GetValue(text_property);

}

}

privatemodel_model;

}

}

想要这个软件给别人用,他们可以用他们名字,可以选要不要时间

<Grid.ColumnDefinitions>

<ColumnDefinition></ColumnDefinition>

<ColumnDefinition></ColumnDefinition>

<ColumnDefinition></ColumnDefinition>

</Grid.ColumnDefinitions>

<TextBoxText="{BindingPath=name,Mode=TwoWay}"Grid.Column="0"Margin="10,10,10,10"></TextBox>

<CheckBoxContent="时间"Grid.Column="1"Margin="10,10,10,10"IsChecked="{BindingPath=time,Mode=TwoWay}"></CheckBox>

<ButtonGrid.Column="2"Content="确定"Margin="10,10,10,10"Click="key"></Button>

保存设置

publicvoidstorage()

{

try

{

stringstr="工具箱.txt";

using(FileStreamtemp=newFileStream(str,FileMode.Create))

{

str=file+"\n"+name+"\n"+time;

byte[]buffer=Encoding.Default.GetBytes(str);

temp.Write(buffer,0,buffer.Length);

}

}

catch(Exceptione)

{

reminder=e.Message;

}

}

这个软件我使用在宝资通

这个月准备CVTE面试,没有时间去写博客,之前在写网络编程,现在还好多问题我在找微软写的,但是他们做的好像好多没有,我看了超神的QiniuUWP,他用的我看到是HttpWebRequestSocket现在王大神就做了局域网通信,我还在看,他写的我看不明白,不是他用的高级,是没有把心放在去看他的

分享到:
评论

相关推荐

    WPF xml设置菜单

    菜单项的属性,如文本、命令、快捷键等,可以作为属性添加到元素中,如`Text="文件"`、`Command="Open"`等。 - 可以通过子元素来表示子菜单,例如`&lt;MenuItem&gt;`嵌套在另一个`&lt;MenuItem&gt;`下,以构建层次化的菜单结构...

    WPF 效仿CMD完成命令操作

    在WPF中,我们可以通过监听键盘事件来实现快捷键的操作。例如,可以监听`KeyDown`事件,检查按下的是哪些键,并根据不同的键组合执行相应的命令。例如,使用`Control + C`组合键可以实现复制,`Control + V`则用于...

    WPF音量控制

    在Windows Presentation Foundation(WPF)...记得在设计时考虑易用性,例如添加键盘快捷键支持,以及考虑到不同用户对音量控制的不同需求,如静音、音量步进大小等。在实践中,不断优化和调整,以提供最佳的用户体验。

    WPF中软键盘调用

    5. **优化用户体验**:除了基本功能,还可以考虑增加一些高级特性,比如自动切换数字/字母键盘、提供退格键、支持快捷键等。这将提升软键盘的实用性和易用性。 在压缩包中的`WpfKeyboardDemo`项目,很可能包含了一...

    WPF仿Windows资源管理器(含数据库交互)

    总的来说,"WPF仿Windows资源管理器"项目是一个全面的学习资源,涵盖了WPF界面设计、数据交互、键盘快捷键处理以及数据库操作等多个方面。对于想要深入理解WPF和C#开发的初学者来说,这是一个很好的实践案例。项目中...

    wpf打造类似vs的编辑界面

    最后,为了提供与Visual Studio类似的用户体验,我们可以集成诸如主题切换、多文档界面(MDI)支持、搜索功能以及快捷键等功能。这可能涉及到更多的WPF控件和API,如`TabControl`用于MDI,`TextBox`和`Popup`实现搜索...

    WPF富文本编辑器

    同时,可以利用`CommandBinding`和`InputGesture`来添加快捷键支持,提升用户体验。 6. **布局管理**:WPF的布局系统使得`RichTextBox`可以轻松地与其他控件组合,如工具栏、状态栏等。通过`Grid`、`StackPanel`等...

    记事本(c#实现快捷键)

    5. **异常处理**:确保对可能出现的错误进行妥善处理,如文件未找到、无法读写等。 6. **运行和测试**:完成编码后,运行程序并进行各种操作测试,确保所有功能正常工作,快捷键有效。 通过以上步骤,我们就能在C#...

    WPF 图片浏览器,实现 缩放、平移操作、图片切换 等功能

    还可以考虑添加键盘快捷键支持,例如使用左右箭头键切换图片,上箭头键恢复原始大小,下箭头键放大到屏幕大小。 ### 7. 总结 通过上述步骤,我们可以构建一个功能完备的WPF图片浏览器,它允许用户平移、缩放和切换...

    WPF做的图片浏览器

    - **键盘快捷键**:添加键盘快捷键支持,方便用户操作。 通过以上介绍,我们可以看到,使用WPF和C#开发一个图片浏览器涉及到许多技术层面,包括UI设计、数据绑定、事件处理以及元数据解析。这个项目是一个很好的...

    C# WPF 实现类似记事本的程序源代码 RichText Editor

    - **读写文件**:使用`FileStream`和`StreamReader/StreamWriter`类,实现打开、保存和另存为文件的功能。 - **剪切、复制和粘贴**:利用`DataObject`和`Clipboard`类实现这些常见的文本操作。 - **查找和替换**...

    wpf combox中嵌套checkbox,ET导入数据,F1 ,F2 全屏等

    如果是Excel,我们可以使用OleDbConnection、OleDbDataAdapter等.NET框架提供的类来读取Excel文件,然后将数据导入数据库。如果是Entity Framework,我们可以通过DbContext和EF的DbSet对象,批量添加或更新数据到...

    C# wpf 图片查看器源码

    - 快捷键支持:常见的快捷键如“上一张”、“下一张”、“放大”、“缩小”等可以提高操作效率。 - 滑动手势:在触摸设备上,可以通过滑动手势实现图片的翻页。 - 预加载机制:为了提供平滑的浏览体验,可以预先...

    Wpf版的相册浏览器

    5. 元数据支持:读取并显示图片的元数据,如拍摄日期、相机型号、地理位置等,这些信息可以通过WPF的数据绑定和`System.Drawing.Imaging`命名空间下的类来获取。 6. 高性能显示:WPF的位图缓存和硬件加速功能确保了...

    C#做魔兽争霸3快捷键修改器

    C#中的Windows Forms或WPF框架可以用于构建这样的界面,包含各种控件如按钮、文本框和组合框,允许用户选择和输入快捷键。此外,事件驱动编程是关键,需要为每个控件绑定相应的事件处理函数,以响应用户的操作。 在...

    wpf制作的音乐盒

    1. **本地音乐播放**:音乐盒能够读取用户计算机上的音频文件,可能通过文件浏览器控件或拖放操作来添加音乐。这涉及到WPF的数据绑定和多媒体处理能力,如MediaElement控件用于播放音频文件,而DataGrid或ListView...

    C#(PPT教案)WPF

    - **编辑器的扩展性**:可能讨论如何添加自定义菜单项或快捷键,以及集成语法高亮和自动完成功能。 4. **文件和流**: - **文件操作**:讲解如何读写文件,包括文本文件和二进制文件,以及文件的打开、关闭、追加...

    AutoVsCEnv_WPF V1.991.zip #资源达人分享计划#

    通过这个压缩包,用户可以快速设置好Visual Studio Code,使其适应WPF开发环境,包括安装必要的插件、设置快捷键、导入预设的编译和调试配置等。这极大地提高了开发效率,尤其是在需要频繁切换项目或环境的场景下。...

    WinForms和WPF中的全局快捷方式

    7. **文本处理**:在处理用户输入或配置文件时,可能会涉及到文本解析和格式化,例如读取用户自定义的快捷键设置。 了解以上知识点后,开发者可以通过创建一个全局快捷键管理器类,注册和注销快捷键,以及处理相应...

    C# txt文本编辑器完整详细源码

    文本编辑器的核心功能在于读取、编辑和保存文本文档,特别是.txt格式的纯文本文件。在C#中,我们可以使用`System.IO`命名空间中的`StreamReader`和`StreamWriter`类来实现这些操作。`StreamReader`用于读取文件内容...

Global site tag (gtag.js) - Google Analytics