WPF定义了五种Trigger来作为触发条件,分别是:Trigger,DataTrigger,MultiTrigger,MultiDataTrigger,EventTrigger,他们的触发条件分别是:
- Trigger:以控件的属性作为触发条件,如前面的IsMouseOver为True的时候触发。
- DataTrigger:以控件DataContext的属性作为触发条件。
- MultiTrigger:以控件的多个属性作为触发条件。
- MultiDataTrigger:以控件DataContext的多个属性作为触发条件。
- EventTrigger:以RoutedEvent作为触发条件,当指定的路由事件Raise时触发。
使用TargetType属性限定该样式可以引用的对象
样式设置BasedOn特性来使用此类样式继承
使用类型标记扩展来隐式的设置键名,样式会自动应用与整个元素树的所有TextBlock上 x:Key="{x:Type TextBlock}"
Styles are always built as resources
Style="{x:Null}"
Border 是一个装饰的控件,此控件绘制一个边框、一个背景,在 Border 中只能有一个子控件,但它的子控件是可以包含多个子控件的Border 的几个生要的属性:
Background:此WPF Border属性设置 Border 用来绘制背景的 Brush 对象。
BorderBrush:此属性设置 Border 用来绘制边框的 Brush 对象。
BorderThickness:此属性设置 Border 边框的宽度,此属性是一个 Thickness 对象, Thickness 是一个 struct 类型的对象,使用 Thickness 对象可以设置边框每一边的线条的宽度。
CornerRadius:此WPF Border属性设置 Border 的每一个角圆的半径,此属性是一个 CornerRadius 对象,CornerRadius 是一个struct 类型的对象。
Padding:此WPF Border属性设置 Border 里的内容与边框的之间的间隔,此属性是一个 Thickness 对象,可以使用此对象为每一边的间隔进行设置。
与犯罪的战争:坏家伙的全盛时代/修罗场 阿修罗
Infrastructure InteractionRequestedEventArgs
wpf 打印 https://blog.csdn.net/duanzi_peng/article/details/14118937
string stringURL = "http://localhost:8080/GetCSharpRequest";
//创建一个HTTP请求
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(stringURL);
//Post请求方式
request.Method = "POST";
//内容类型
request.ContentType ="application/octet-stream";
//设置参数,并进行url编码
string paraUrlCoded = System.Web.HttpUtility.UrlEncode("param");
paraUrlCoded += "=" + System.Web.HttpUtility.UrlEncode(json);
byte[] payload;
//将json字符串转换为字节
payload = Encoding.UTF8.GetBytes(paraUrlCoded);
//设置请求的ContentLength
request.ContentLength = payload.Length;
//发送请求,获取请求流
Stream writer;
try
{
writer = request.GetRequestStream();
}
catch (Exception)
{
writer = null;
Console.WriteLine("链接服务器失败");
}
//将请求参数写入流
writer.Write(payload, 0, payload.Length);
writer.Close();
string strValue = "";
HttpWebResponse response;
try
{
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException e)
{
response = e.Response as HttpWebResponse;
}
Stream s = response.GetResponseStream();
StreamReader sr = new StreamReader(s, Encoding.UTF8);
StringBuilder sb = new StringBuilder();
sb.Append(sr.ReadToEnd());
strValue = sb.ToString();
Console.WriteLine("响应结果:{0}", strValue);