1、字体加粗
Label.FontWeight = FontWeights.Bold;
2、设置16进制颜色值
Label.Background = new SolidColorBrush(Colors.CadetBlue); //背景颜色
Label.Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#0099FF"));
Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#F0F8FF"));
3、设置字体样式
Label.FontFamily = new FontFamily("华文楷体");
4、Label标签字体居中
Label.HorizontalContentAlignment = HorizontalAlignment.Center; //水平居中
Label.VerticalContentAlignment = VerticalAlignment.Center; //垂直居中
5、TextBox输入框控件,鼠标离开时触发事件
⑴得到焦点:GotFocus="TextBox_GotFocus"
⑵失去焦点:LostFocus="TextBox_LostFocus"
⑶鼠标离开:MouseLeave="TextBox_MouseLeave"
⑷文本框内容发生变化时:TextChanged="TextBox_TextChanged"
6、窗口居中
WindowStartupLocation="CenterScreen"
7、窗体无边框
WindowStyle="None"
8、禁用放大和缩小
ResizeMode="NoResize"
9、设置TextBox输入转换为大写
CharacterCasing="Upper"
10、TextBox边框以及透明度
Opacity="0.8"; BorderThickness="0"
11、委托
this.Dispatcher.BeginInvoke(DispatcherPriority.Background,(Action)(() => { Keyboard.Focus(TextBox); }));
12、只能输入字母
private void textBox1_TextChanged(object sender, EventArgs e)
{
if (System.Text.RegularExpressions.Regex.IsMatch("^[a-zA-Z]", textBox1.Text))
{
MessageBox.Show("只能输入字母");
textBox1.Text.Remove(textBox1.Text.Length - 1);
}
}
13、引入外部样式
https://www.cnblogs.com/therock/articles/2135997.html
后台代码引入样式
ResourceDictionary dic = new ResourceDictionary()
{ Source = new Uri(@" pack://application:,,,/Hnt.WMS.Controls;component/CSS/DictionaryCSS.xaml", UriKind.Absolute) };
button.Style = (System.Windows.Style)dic["CloseButtonStyle"];
14、集合和数组的相互转换
https://blog.csdn.net/wenzhi20102321/article/details/72329907/
15、C#判断某元素是否存在数组中
string[] s1 = new string[3] { "John", "Paul", "Mary" };
if (s1.Contains("John"))
Response.Write("fadfadfa");
法二:
int[] ia = {1,2,3};
int id = Array.IndexOf(ia,value);
if(id==-1)
不存在
else
存在
16、禁止文本框粘贴
|
private
void
CommandBinding_Executed(
object
sender, ExecutedRoutedEventArgs e)
{
}
//后台
private
void
CommandBinding_CanExecute(
object
sender, CanExecuteRoutedEventArgs e)
{
e.Handled =
true
;
}
17.判断字符串中是否存在某个值
Contains
18.DataGrdi表头样式引用
ColumnHeaderStyle="{DynamicResource DataGridHeader1}"
19.WPF 下拉框属性
https://wenku.baidu.com/view/b22507c8050876323112129d.html
20.DataGrid中,编辑状态下触发事件
21.获取DataGrid指定行中的值
///
/// 获取ChooseMaterielDataGrid
/// 中指定某一列的值
///
///
///
private MaterialInfoDetailed GetChooseMaterielDataGrid(int index)
{
DataGridRow rowContainer = (DataGridRow)ChooseMaterielDataGrid.ItemContainerGenerator.ContainerFromIndex(ChooseMaterielDataGrid.SelectedIndex);
DataGridCellsPresenter presenter = GetVisualChild
DataGridCell cell = (DataGridCell)presenter.ItemContainerGenerator.ContainerFromIndex(index);
GetVisualChild1
UnSelectOrtherMes(ChooseOrderDataGrid);
MaterialInfoDetailed mySelectedElement = (MaterialInfoDetailed)ChooseMaterielDataGrid.SelectedItem;
return mySelectedElement;
}
22.两个日期差
TimeSpan timeSpan = new TimeSpan(DateTime.Now.Ticks - location.EnterTime.Ticks);
string timeSpans = (int)timeSpan.TotalHours + "小时" + timeSpan.Minutes + "分钟" + timeSpan.Seconds + "秒";
23.List集合表达式
UserInfo userInfo = this.UserInfoOC.FirstOrDefault(v => (v.Id == selectItem.Id));
List
for (int i = 1; i < listLineTask.Count; i++)
{
LineTask nextTask = listLineTask[i];
listLineExceptionInfo = listLineExceptionInfo.Where(p =>
p.VetoStartNo != nextTask.StartNo & p.VetoEndNo != nextTask.EndNo).ToList();
}
int count = listLineExceptionInfo.Where(p =>
p.VetoStartNo == startPortCode & p.VetoEndNo == endPortCode).Count();
if (count > 0)
{
hintMessage.Result = true;
hintMessage.Message = string.Empty;
return hintMessage;
}
24、WPF自定义光标
Cursor = Cursors.Hand,
WPF中鼠标光标的设置
WPF 中每个光标通过一个System.Windows.Input.Cursor表示,获取Cursor对象的最简单方法是使用Cursor类(位于System.Windows.Input名称空间)的静态属性。
如:
this.Cursor=Cursors.wait;
或
但是有一个例外,通过使用ForceCursor属性,父元素会覆盖子元素的光标位置,当把该属性设置为true时,会忽略子元素的Cursor属性,并且父元素的光标会被应用到内部的所有内容。
为了移除应用程序范围的光标覆盖设置,需要将Mouse.OverrideCursor属性设置为null。
WPF支持自定义光标,可以使用普通的.cur光标文件(本质上是一副小位图),也可以使用.ani动画光标文件,为了使用自定义的光标,需要为Cursor对象的构造函数传递光标文件的文件名或包含贯标数据的流。
Cursor cur=new Cursor(Path.Combine(ApplicationDir,"1.ani"));
this.Cursor=cur;