当前位置: 首页 > news >正文

建e网站北京seo报价

建e网站,北京seo报价,wordpress微商城模板,软件开发工具多少钱文章目录 控件折叠字体尺寸绑定选择字体字体的中文名称 txt阅读器系列: 需求分析和文件读写目录提取类💎列表控件与目录 控件折叠 作为一个txt阅读器,至少能够设置文字字体、尺寸,段落行间距等,还得有护眼模式等一系…

文章目录

    • 控件折叠
    • 字体尺寸绑定
    • 选择字体
    • 字体的中文名称

txt阅读器系列:

  • 需求分析和文件读写
  • 目录提取类💎列表控件与目录

控件折叠

作为一个txt阅读器,至少能够设置文字字体、尺寸,段落行间距等,还得有护眼模式等一系列功能,这也是最开始设计UI的时候,留下右侧空白的原因。但这些设置并不需要一直显示,故而在工具栏中给了一个👉按钮,用于开启或关闭右侧边栏。

为👉按钮添加事件btnCloseRight_Click,内容为

private void btnCloseRight_Click(object sender, RoutedEventArgs e)
{Button btn = sender as Button;bool flag = btn.Content.ToString() == "👈";btn.Content = flag ? "👉" : "👈";svRight.Visibility = flag ? Visibility.Visible : Visibility.Collapsed;
}

字体尺寸绑定

字体尺寸对阅读的影响是十分显著的,所以文本设置的第一条就是设置字体,其前端的设计逻辑如下

在这里插入图片描述

其中文本框中显示的是字体尺寸,+-号分别会让字体尺寸加一或者减一,而二者之间的滑动条则与文本框互相绑定,从而文本框显示的值就是滚动条中的值。具体实现方法如下

<StackPanel Orientation="Horizontal"><TextBlock Text="尺寸"/><TextBox Width="50" Height="20" Text="{Binding Value, ElementName=sFontSize}"/><Button Content="-" Width="20" Click="btnChangeFontSize_Click"/><Slider x:Name="sFontSize" VerticalAlignment="Center" Width="150"Minimum="1" Maximum="100" Value="15" IsSnapToTickEnabled="True"/><Button Content="+" Width="20" Click="btnChangeFontSize_Click"/>
</StackPanel>

其中,Text="{Binding Value, ElementName=sFontSize}"表示绑定了sFontSizeValue属性。

+-这两个按钮绑定的事件btnChangeFontSize_Click内容如下

private void btnChangeFontSize_Click(object sender, RoutedEventArgs e)
{Button btn = sender as Button;if (sFontSize.Value == 1)return;sFontSize.Value += btn.Content.ToString() == "+" ? 1 : -1;
}

此外,修改txt控件,将其FontSize也绑定到sFontSize上,具体变化为

<TextBox x:Name="txt" AcceptsReturn="True" TextWrapping="Wrap" FontFamily="{Binding SelectedItem, Source=cbFont}"FontSize="{Binding Value, ElementName=sFontSize}"VerticalScrollBarVisibility="Auto"/>

效果如下

在这里插入图片描述

选择字体

字体就只有那么多种,选择字体显然用ComboBox比较合适,具体的控件设置如下

<StackPanel Orientation="Horizontal"><TextBlock Text="字体"/><ComboBox x:Name="cbFont" Width="150"/>
</StackPanel>

然后在C#中添加绑定代码

public MainWindow()
{InitializeComponent();init();
}public void init()
{foreach (var fm in Fonts.SystemFontFamilies)cbFont.Items.Add(fm.Source);cbFont.SelectedIndex = 0;
}

通过cbFont.Items.Add逐个添加字体,并且修改txt,使之与字体相绑定

<TextBox x:Name="txt" AcceptsReturn="True" TextWrapping="Wrap" FontFamily="{Binding SelectedItem, ElementName=cbFont}"FontSize="{Binding Value, ElementName=sFontSize}"VerticalScrollBarVisibility="Auto"/>

最后效果如下

在这里插入图片描述

字体的中文名称

尽管我们的确得到了所有系统字体,但这些字体讲道理我们一个都不认识。而对于一个字体文件来说,除了英文名称外,还有不同语言的名称,封装在font.FamilyNames这个属性中。以中文为例,其对应的名称是zh-cn。为了得到中文名称,可以先创建一个中文的XmlLanguage,然后通过TryGetValue将中文名称试探性地输出到一个字符串中。这个TryGetValue的逻辑类似于int.TryParse,当转换成功时返回True,所以最终代码写成如下形式,这样一来,就可以显示所有中文字体了。

List<string> zhNames = new List<string>();
string tmpStr;
var ZH = XmlLanguage.GetLanguage("zh-cn");
foreach (var font in Fonts.SystemFontFamilies)if (font.FamilyNames.TryGetValue(ZH, out tmpStr))zhNames.Add(tmpStr);
cbFont.ItemsSource = zhNames;
cbFont.SelectedIndex = 0;
http://www.shuangfujiaoyu.com/news/54041.html

相关文章:

  • 金华大奇网站建设成品短视频app源码的优点
  • 网站开发时自适应竞价推广套户渠道商
  • b2c网站开发注意事项搜收录批量查询
  • 电子商务网站开发的题企业网站建设需要多少钱
  • 淄博周村网站建设哪家好自动推广软件
  • 阿荣旗人民政府网站建设项目网站模板哪家好
  • 武汉网站制作pc 手机百度的营销策略
  • 小件加工平台宁波seo外包推广软件
  • 公司网站建设总结seo搜索引擎优化薪酬
  • 合肥晚报社官方网站上海专业seo服务公司
  • 自己怎么开网站做销售网络服务器
  • ssh实训做网站代码下载seo免费课程视频
  • 教人做美食的网站百度云账号登录
  • 做puzzle的网站百度电话号码
  • 低价做网站靠谱吗北京网络推广公司wyhseo
  • 内蒙古建设厅网站搜狐财经峰会直播
  • 手机淘宝引擎优化搜索
  • 做网站的新闻排名优化公司哪家靠谱
  • wordpress 更新 500网站推广seo
  • 外贸wordpress建站win7优化工具哪个好用
  • 在网上怎么卖货seo网站推广是什么
  • 网站修改影响做百度竞价吗怎么提高百度关键词排名
  • b2b商城网站源码seo主要做什么工作
  • 怎么把在微企点做响应式网站深圳百度推广联系方式
  • 西安城乡建设委员会的网站高端品牌网站建设
  • 创业做app哪个网站好网络营销战略的内容
  • 网站怎么做备份数据库百度贴吧的互动社区
  • 如何做网站微信支付天津百度推广中心
  • 建站需要哪些东西泉州百度竞价推广
  • 4399谁做的网站三只松鼠网络营销方案策划书