WPF 中的相关样式
<Image Name="icon" Width="40" Height="40" Source="/Resources/huocheS.png" />
<Border Width="210" BorderBrush="#626363" BorderThickness="1" Margin="5">
<Label x:Name="lab" Foreground="#626363" >sdf</Label>
</Border>
<StackPanel Height="230" x:Name="pinfo" >
<StackPanel.Background>
<ImageBrush ImageSource="/Resources/info.png" Opacity="0.7"></ImageBrush>
</StackPanel.Background>
</StackPanel>
Label 设置背景色
Label.Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#626363"));
Label.BorderBrush = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#626363"));
设置背景图片
//tabA1.Background = new ImageBrush { ImageSource = new BitmapImage(new Uri(filepath)) };
画图形顺序为逆时针
<Polygon x:Name="pl1"
Points="0,0 0,30 160,30 130,0"
Stroke="Purple"
StrokeThickness="0">
<Polygon.Fill>
<SolidColorBrush Color="#126CB1"/> </Polygon.Fill>
</Polygon>
后台修改所画的图形位置
private void Removestate(Polygon path, TextBlock label)
{
if (path.Points[0].Y == 0)
{
path.Points[0] = new Point(path.Points[0].X + 10, path.Points[0].Y + 10);
path.Points[1] = new Point(path.Points[1].X + 10, path.Points[1].Y + 10);
path.Points[2] = new Point(path.Points[2].X + 10, path.Points[2].Y + 10);
path.Points[3] = new Point(path.Points[3].X + 10, path.Points[3].Y + 10);
Canvas.SetTop(label, Canvas.GetTop(label) + 10);
Canvas.SetLeft(label, Canvas.GetLeft(label) + 10);
path.Fill = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#547EAD"));
} }
Image 绑定
image1.Source = new BitmapImage(new Uri(filepath + "Resources\\images\\map2.png"));
RichTextBox定时刷新添加内容
delegate void mydelete();
private void bindRichText()
{
try
{
DispatcherTimer dTimer = new System.Windows.Threading.DispatcherTimer(); dTimer.Tick += new EventHandler(dTimer_Tick);
dTimer.Interval = new TimeSpan(0, 0, 0, 0, 1000); string filepath = Environment.CurrentDirectory;
if (filepath.Substring(filepath.Length - 1) != "/")
filepath += "\\" + "DataFile\\" + "rich1.txt";
StreamReader sr = new StreamReader(filepath, Encoding.Default);
allinfo = new List<string>();
string rowinfo = "";
while (!string.IsNullOrEmpty(rowinfo = sr.ReadLine()))
{
allinfo.Add(rowinfo);
}
sr.Close();
sr.Dispose();
setText();
dTimer.Start();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
void dTimer_Tick(object sender, EventArgs e)
{
try
{
mydelete dele = new mydelete(setText);
dele.Invoke();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
} private void setText()
{
if (i == allinfo.Count - 1)
i = 0;
this.richTextmain.AppendText(allinfo[i] + "\r");
this.richTextMemo.ScrollToEnd();
i++;
}
Frame 绑定
string filepath = Environment.CurrentDirectory;
if (filepath.Substring(filepath.Length - 1) != "/")
filepath += "\\" + "MyHtml\\sdf.htm";
frame.Source = new Uri(filepath);
后台画路径/图形
void dTimer1_Tick(object sender, EventArgs e)
{
Random dr = new Random();
string varchar = chartData[dr.Next(0, chartData.Length)];
Thread.Sleep(1000);
if (varchar != null && varchar != "")
{
string[] v = varchar.Split(',');
Point p1 = new Point(Convert.ToInt32(v[0]), Convert.ToInt32(v[1]));
Point p2 = new Point(Convert.ToInt32(v[2]), Convert.ToInt32(v[3]));
Point p3 = new Point(Convert.ToInt32(v[4]), Convert.ToInt32(v[5]));
Point p4 = new Point(Convert.ToInt32(v[6]), Convert.ToInt32(v[7]));
Point[] values = new Point[] { p1, p2, p3, p4 };
StreamGeometry theGeometry = BuildRegularPolygon(values, true, true);
path1.Data = theGeometry;
}
}
WPF DataGrid
<UserControl.Resources>
<!--DataGridRow-->
<Style TargetType="{x:Type DataGridRow}">
<Setter Property="IsTabStop"
Value="False" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type DataGridRow}">
<Grid Name="Root"> <Grid.RowDefinitions>
<RowDefinition />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition />
</Grid.ColumnDefinitions> <Rectangle x:Name="InvalidVisualElement"
Grid.RowSpan="2"
Grid.ColumnSpan="2"
Opacity="0.2"
Fill="#87CFFF" /> <DataGridCellsPresenter Grid.Column="1"
TextBlock.Foreground="Black"
Name="CellsPresenter" />
<Rectangle Grid.Row="2"
Grid.Column="1"
Fill="Transparent"
Name="BottomGridLine"
HorizontalAlignment="Stretch"
Height="1" />
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsSelected"
Value="True">
<Setter Property="Fill"
TargetName="InvalidVisualElement"
Value="#FF9900" />
<Setter Property="Opacity"
Value="0.8"
TargetName="InvalidVisualElement" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="{x:Type DataGridColumnHeader}">
<Setter Property="Foreground"
Value="White" />
<Setter Property="Background"
Value="#87CFFF" />
<Setter Property="IsTabStop"
Value="False" />
<Setter Property="SeparatorBrush"
Value="Black" />
<Setter Property="Height"
Value="Auto" />
<Setter Property="MinHeight"
Value="30" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type DataGridColumnHeader}">
<Grid Name="Root">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions> <Rectangle x:Name="BackgroundRectangle"
Stretch="Fill"
Fill="#87CFFF"
Opacity="0.5"
Grid.ColumnSpan="2" /> <Grid HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
Margin="{TemplateBinding Padding}">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions> <ContentPresenter VerticalAlignment="Center"
HorizontalAlignment="Left"
Margin="6,0,0,0"
TextBlock.FontFamily="Segoe UI"
TextBlock.FontSize="14"
TextBlock.FontWeight="Regular"
Content="{TemplateBinding Content}" />
<!--<TextBlock VerticalAlignment="Center"
HorizontalAlignment="Left"
Margin="6,0,0,0"
TextBlock.FontFamily="Segoe UI"
TextBlock.FontSize="14"
TextBlock.FontWeight="Regular"
Text="{Binding RelativeSource={RelativeSource AncestorType=DataGridCell},Path=Content}" />--> <Path Grid.Column="1"
Name="SortIcon"
Fill="#87CFFF"
RenderTransformOrigin=".5,.5"
HorizontalAlignment="Left"
VerticalAlignment="Center"
Opacity="0"
Stretch="Uniform"
Width="8"
Margin="4,0,0,0"
Data="F1 M -5.215,6.099L 5.215,6.099L 0,0L -5.215,6.099 Z ">
<Path.RenderTransform>
<ScaleTransform ScaleX=".9"
ScaleY=".9" />
</Path.RenderTransform>
</Path>
</Grid> <Rectangle Name="VerticalSeparator"
Grid.Column="1"
Width="1"
VerticalAlignment="Stretch"
Fill="{TemplateBinding SeparatorBrush}"
Visibility="{TemplateBinding SeparatorVisibility}" /> </Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!--DataGridCell-->
<Style TargetType="{x:Type DataGridCell}">
<Setter Property="Background"
Value="Transparent" />
<Setter Property="MinHeight"
Value="30" />
<Setter Property="Height"
Value="Auto" />
<Setter Property="IsTabStop"
Value="False" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type DataGridCell}">
<Grid Name="Root"
Background="{TemplateBinding Background}">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions> <ContentPresenter Content="{TemplateBinding Content}"
TextBlock.FontFamily="Segoe UI"
TextBlock.TextAlignment="Justify"
TextBlock.FontSize="14"
TextBlock.FontWeight="Regular"
ContentTemplate="{TemplateBinding ContentTemplate}"
VerticalAlignment="Center"
HorizontalAlignment="Left"
Margin="6,0,0,0" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style> <Style TargetType="{x:Type Hyperlink}">
<Setter Property="Foreground"
Value="Black" />
<Setter Property="Cursor"
Value="Hand" />
</Style> </UserControl.Resources>
<DataGrid
Margin="10,10,5,0"
Grid.Row="1"
Grid.Column="0"
Width="550"
Canvas.Right="1"
CanUserAddRows="False"
Name="grid1"
Foreground="Black"
VerticalScrollBarVisibility="Hidden"
HorizontalScrollBarVisibility="Hidden"
Background="Transparent" >
<DataGrid.Columns> <DataGridTemplateColumn Width="150">
<DataGridTemplateColumn.Header>
<TextBlock VerticalAlignment="Center" Foreground="White" Padding="5,5,5,5" TextWrapping="Wrap" TextTrimming="WordEllipsis" >kk</TextBlock>
</DataGridTemplateColumn.Header>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Path=kk}" VerticalAlignment="Center" Foreground="White" Padding="5,5,5,5" TextWrapping="Wrap" TextTrimming="WordEllipsis" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Width="120">
<DataGridTemplateColumn.Header>
<TextBlock VerticalAlignment="Center" Foreground="White" Padding="5,5,5,5" TextWrapping="Wrap" TextTrimming="uu" >Change Location</TextBlock>
</DataGridTemplateColumn.Header>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Path=uu}" VerticalAlignment="Center" Foreground="White" Padding="5,5,5,5" TextWrapping="Wrap" TextTrimming="WordEllipsis" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="ss" Width="120" Foreground="White" Binding="{Binding ss}" />
<DataGridTextColumn Header="dd" Width="60" Foreground="White" Binding="{Binding dd}" />
</DataGrid.Columns>
</DataGrid> private void BindingTxt1()
{
ObservableCollection<ItemA21> Datalist = new ObservableCollection<ItemA21>();
string filename = "A21_new.txt";
int columns = 5;
int rows = 3;
try
{
string filepath = Environment.CurrentDirectory;
if (filepath.Substring(filepath.Length - 1) != "/")
filepath += "\\" + "DataFile\\" + filename;
StreamReader sr = new StreamReader(filepath, Encoding.Default);
string txtinfo = sr.ReadToEnd();
string[] strRows = txtinfo.Split(';');
int Total = strRows.Length;
Random ra = new Random();
int Filtered = 13;
for (int i = 0; i < Total; i++)
{
int j = ra.Next(1, Total);
ItemA21 item = new ItemA21();
string[] strColumns = strRows[i].Split(',');
if (strColumns.Length == columns)
{
string str0 = strColumns[0];
if (str0.IndexOf(":") > 0)
item.ss= str0.Substring(str0.IndexOf(":") + 1); string str1 = strColumns[1];
if (str1.IndexOf(":") > 0)
item.tt= str1.Substring(str1.IndexOf(":") + 1); string str2 = strColumns[2];
if (str2.IndexOf(":") > 0)
item.dd= str2.Substring(str2.IndexOf(":") + 1); string str3 = strColumns[3];
if (str3.IndexOf(":") > 0)
item.kk= str3.Substring(str3.IndexOf(":") + 1); string str4 = strColumns[4];
if (str4.IndexOf(":") > 0)
item.uu= str4.Substring(str4.IndexOf(":") + 1);
Datalist.Add(item);
}
else
{
//i--;
}
}
//for (int j = 0; j < rows - strRows.Length; j++)
//{
// ItemA21 item = new ItemA21();
// Datalist.Add(item);
//}
grid1.ItemsSource = Datalist;
sr.Close();
sr.Dispose();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message); }
}
WPF 中的相关样式的更多相关文章
- WPF 中的style 样式
WPF相较于以前学的WinForm,WPF在UI设计与动画方面的炫丽是最吸引我来学习的.在WPF中XMAL代码的引入使得代码的编写能够前后端分离,为获得更好的界面,也使得我们不得不分出一半的时间花在前 ...
- WPF教程十:如何使用Style和Behavior在WPF中规范视觉样式
在使用WPF编写客户端代码时,我们会在VM下解耦业务逻辑,而剩下与功能无关的内容比如动画.视觉效果,布局切换等等在数量和复杂性上都超过了业务代码.而如何更好的简化这些编码,WPF设计人员使用了Styl ...
- WPF中ListBox的样式设置
设置之后的效果为
- WPF中样式和行为和触发器
原文:WPF中样式和行为和触发器 样式简介:样式(style)是组织和重用格式化选项的重要工具,不是使用重复的标记填充XAML,以便设置外边距.内边距.颜色以及字体等细节.而是创建一系列封装所有这些细 ...
- WPF中的Style(风格,样式)(转)
在WPF中我们可以使用Style来设置控件的某些属性值,并使该设置影响到指定范围内的所有该类控件或影响指定的某一控件,比如说我们想将窗口中的所有按钮都保持某一种风格,那么我们可以设置一个Style,而 ...
- C#、WPF中如何自定义鼠标样式
需求:在C#中如何自定义鼠标样式?在这里可以分两种情况,一种是在winForm,另一种是在WPF中(注意使用的Cursor对象不一样) 解决办法如下: a.首先针对WinForm中,我们可以采用图标加 ...
- WPF中的Style(风格,样式)
作者: 周银辉 来源: 博客园 发布时间: 2009-02-27 15:04 阅读: 6698 次 推荐: 0 原文链接 [收藏] 在WPF中我们可以使用Style来设置控件的某些 ...
- wpf中的样式与模板
1.WPF样式类似于Web应用程序中的CSS,在WPF中可以为控件定义统一的样式(Style).样式属于资源的一种,例如为Button定义统一的背景颜色和字体: <Window.Resource ...
- WPF,SilverLight中直线的样式示例
原文:WPF,SilverLight中直线的样式示例 XAML代码:// LineStyle.xaml<Viewbox Width="600" Height="50 ...
随机推荐
- keras实现MobileNet
利用keras实现MobileNet,并以mnist数据集作为一个小例子进行识别.使用的环境是:tensorflow-gpu 2.0,python=3.7 , GTX-2070的GPU 1.导入数据 ...
- Linux下使用Docker部署nacos-server(单机模式),丧心病狂的我在半夜给UCloud提交了一份工单
1. 拉取nacos-server镜像 进入 Docker Hub 查看nacos-server最新版本为 nacos-server:1.4.0 配置阿里云镜像加速 sudo mkdir -p /et ...
- 【MySQL/C#/.NET】VS2010报错--“.Net Framework Data Provider。可能没有安装。”
前言 公司行业是金融软件,之前用的都是Oracle数据库.Oracle数据库用一个词来形容:大而全.MySQL的话,可能是因为开源.便宜,现在越来越主流. 我们也支持MySQL数据库,不过平时不用.最 ...
- Lsi卡和IB卡在CentOS中升级
LSI 9271 步骤1:准备升级工具和固件包 rpm -ivh MegaCli-8.07.14-1.noarch.rpm [root@phegdata01 ~]# unzip 23-34-0-000 ...
- PADS CAM光绘输出文件设置
PADS CAM光绘输出文件设置 在使用PADS完成电路板的设计后,通常还需要在CAM350中经过一些处理生成Gerber文件,交给制板厂商进行电路板的生产,这就要求在PADS中设置生成CAM文件,然 ...
- 发现了一个关于 gin 1.3.0 框架的 bug
gin 1.3.0 框架 http 响应数据错乱问题排查 问题概述 客户端同时发起多个http请求,gin接受到请求后,其中一个接口响应内容为空,另外一个接口响应内容包含接口1,接口2的响应内容,导致 ...
- Monkey的使用
1.进入adb shell 环境 在Windows环境下进入DOS界面,输入adb shell 注意:adb shell服务使用的端口是5037,如果此端口被其他进程占用时,将不能正常启动adb sh ...
- ATT&CK 实战 - 红日安全 vulnstack (一) 靶机渗透
关于部署:https://www.cnblogs.com/Cl0ud/p/13688649.html PS:好菜,后来发现内网主机还是PING不通VM1,索性三台主机全部配成NAT模式,按照WEB靶机 ...
- Nday漏洞组合拳修改全校师生密码
很久以前写的文章了,发一下:) 本文是我真实的挖洞经历.撰写本文时相关学校已修复漏洞,相关漏洞也提交给了教育漏洞平台.纯粹是挖洞经验的总结和技术分享,由于敏感信息比较多,所以文章里面很多图片已经面目全 ...
- 性能测试基础——(MEN)
关于内存在一块其实我并不是很想拿出来说,一般情况下内存这一块都是可优化的,可以通过硬件资源或者调整一些系统或者应用系统的参数配置来进行优化. 很多同僚问到了"内存泄漏"和" ...