国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

詳解WPF自定義搜索框代碼

2024-07-10 12:54:19
字體:
來源:轉載
供稿:網友

網頁開發在互聯網上運行很廣泛,其實WPF是制作界面的一大利器,下面就由錯新技術頻道小編和大家一起看一看詳解WPF自定義搜索框代碼,希望對你學習這方面知識有所幫助。

首先下載搜索圖標:

搜索框設計過程比較簡單:?

1、先定義一個Rectangle作為背景?

2、然后中間放TextBox輸入,可以重寫其中的模板。提示語Label放在模板中,可以在模板的觸發器中控制隱藏顯示~?

3、搜索按鈕-大家隨便在網上下個就行了。?

UserControl界面:?

<UserControl x:Class="WpfApplication18.SearchControl"       xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"       xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"       xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"        mc:Ignorable="d" MinHeight="30" MinWidth="150" Background="Transparent"       d:DesignHeight="30" d:DesignWidth="150">  <Grid>    <Grid.ColumnDefinitions>      <ColumnDefinition Width="15"></ColumnDefinition>      <ColumnDefinition Width="*"></ColumnDefinition>      <ColumnDefinition Width="36"></ColumnDefinition>    </Grid.ColumnDefinitions>    <Rectangle Grid.Column="0" Grid.ColumnSpan="3" Fill="LightGray" RadiusX="15" RadiusY="15" Opacity="0.8"></Rectangle>        <TextBox x:Name="TbxInput" Grid.Column="1" KeyDown="TbxInput_OnKeyDown">      <TextBox.Template>        <ControlTemplate TargetType="TextBox">          <Grid>            <TextBlock x:Name="Uc_TblShow" Text="請輸入..." Foreground="Gray" Opacity="0.5" VerticalAlignment="Center" Visibility="Collapsed"></TextBlock>            <TextBox x:Name="Uc_TbxContent" Foreground="Gray" Background="Transparent" VerticalAlignment="Center" VerticalContentAlignment="Center" BorderThickness="0"                 Text="{Binding ElementName=TbxInput,Path=Text,Mode=TwoWay}" FontSize="18"></TextBox>          </Grid>          <ControlTemplate.Triggers>            <Trigger SourceName="Uc_TbxContent" Property="Text" Value="">              <Setter TargetName="Uc_TblShow" Property="Visibility" Value="Visible"></Setter>            </Trigger>            <Trigger SourceName="Uc_TbxContent" Property="IsFocused" Value="True">              <Setter TargetName="Uc_TblShow" Property="Visibility" Value="Collapsed"></Setter>            </Trigger>          </ControlTemplate.Triggers>        </ControlTemplate>      </TextBox.Template>    </TextBox>        <Button x:Name="BtnSearch" Grid.Column="2" Click="BtnSearch_OnClick" Cursor="Hand">      <Button.Template>        <ControlTemplate TargetType="Button">          <Grid>            <Image x:Name="Uc_Image" Source="1181298.png" Height="20" Width="20"></Image>            <ContentPresenter></ContentPresenter>          </Grid>          <ControlTemplate.Triggers>            <Trigger Property="IsMouseOver" Value="true">              <Setter TargetName="Uc_Image" Property="Height" Value="25"></Setter>              <Setter TargetName="Uc_Image" Property="Width" Value="25"></Setter>            </Trigger>          </ControlTemplate.Triggers>        </ControlTemplate>      </Button.Template>    </Button>  </Grid></UserControl> 

UserControl后臺:

  public partial class SearchControl : UserControl  {    public SearchControl()    {      InitializeComponent();    }    public event EventHandler<SearchEventArgs> OnSearch;     private void BtnSearch_OnClick(object sender, RoutedEventArgs e)    {      ExeccuteSearch();    }    private void TbxInput_OnKeyDown(object sender, KeyEventArgs e)    {      ExeccuteSearch();    }    private void ExeccuteSearch()    {      if (OnSearch!=null)      {        var args=new SearchEventArgs();        args.SearchText = TbxInput.Text;        OnSearch(this, args);      }    }  }  public class SearchEventArgs : EventArgs  {    public string SearchText { get; set; }  } 

相信大家對詳解WPF自定義搜索框代碼都有了一定的了解,如果你想了解更多的專業知識,那就關注js.VeVb.com吧!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鄢陵县| 儋州市| 余姚市| 宣武区| 甘肃省| 原平市| 浦江县| 琼结县| 射洪县| 黄陵县| 宁化县| 沁阳市| 林西县| 城固县| 合阳县| 来宾市| 济阳县| 澳门| 抚顺县| 沽源县| 虎林市| 临清市| 盐亭县| 新巴尔虎右旗| 丁青县| 凤山市| 高雄市| 阿克陶县| 伊宁县| 阳原县| 益阳市| 涞源县| 衡山县| 蚌埠市| 彰化市| 榆社县| 盐池县| 浏阳市| 祁东县| 东丰县| 大港区|