WPF中怎么自定義MenuItem樣式-創(chuàng)新互聯(lián)

這篇文章給大家介紹WPF中怎么自定義MenuItem樣式,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

創(chuàng)新互聯(lián)建站從2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都網(wǎng)站設(shè)計、做網(wǎng)站網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元沁水做網(wǎng)站,已為上家服務(wù),為沁水各地企業(yè)和個人服務(wù),聯(lián)系電話:18980820575

一、前言

默認(rèn)的MenuItem樣式比較普通,這次自定義MenuItem的樣式也只是對MenuItem的顏色風(fēng)格進(jìn)行變化。需要其他功能的變化,大家可以根據(jù)樣式代碼進(jìn)行擴(kuò)展。

MenuItem的樣式代碼:

<!--MenuItem-->    <Style TargetType="MenuItem">      <Setter Property="Template">        <Setter.Value>          <ControlTemplate TargetType="MenuItem">            <Grid ToolTip="{TemplateBinding Header}" Height="24" Background="#FBFBFD" Width="{TemplateBinding Width}">              <Grid.ColumnDefinitions>                <ColumnDefinition Width="30" />                <ColumnDefinition Width="*" MinWidth="80"/>              </Grid.ColumnDefinitions>              <Border Background="#EBEBED"/>              <Border x:Name="_border"  Grid.ColumnSpan="2"/>              <Image x:Name="_imgicon" Width="12" Height="12" Stretch="Uniform" Source="{Binding Icon,RelativeSource={RelativeSource TemplatedParent}}" />              <TextBlock Foreground="#2D2D30" Grid.Column="1" Margin="5 0 15 0" VerticalAlignment="Center" x:Name="_txt" Text="{Binding Header,RelativeSource={RelativeSource TemplatedParent}}" />              <Path Visibility="Collapsed" x:Name="_path" Grid.Column="1" HorizontalAlignment="Right" Margin="5 13 5 0"  Data="M0,4 4,0 0,-4 z" Fill="#7E8A92"/>              <Popup Placement="Right" x:Name="SubMenuPopup" AllowsTransparency="True"  Focusable="False" IsOpen="{TemplateBinding IsSubmenuOpen}" >                <ScrollViewer  ScrollViewer.VerticalScrollBarVisibility="Auto" ScrollViewer.HorizontalScrollBarVisibility="Disabled">                  <Border Background="#ffc787" Name="SubmenuBorder" BorderBrush="LightGray" BorderThickness="1" SnapsToDevicePixels="True"  >                    <StackPanel  IsItemsHost="True"  KeyboardNavigation.DirectionalNavigation="Cycle" />                  </Border>                </ScrollViewer>              </Popup>            </Grid>            <ControlTemplate.Triggers>              <Trigger Property="HasItems" Value="true">                <Setter TargetName="_path" Property="Visibility" Value="Visible"/>              </Trigger>              <Trigger Property="IsMouseOver" Value="true">                <Setter TargetName="_border" Property="Background" Value="#ffc787"/>                <Setter TargetName="_txt" Property="Foreground" Value="White"/>                <Setter TargetName="_path" Property="Fill" Value="White"/>              </Trigger>              <Trigger Property="IsEnabled" Value="false">                <Setter TargetName="_txt" Property="Foreground" Value="Gray"/>              </Trigger>            </ControlTemplate.Triggers>          </ControlTemplate>        </Setter.Value>      </Setter>    </Style>

引用示例:

<Grid>      <Grid.ContextMenu>        <ContextMenu>          <MenuItem Header="菜單一">            <MenuItem Header="子菜單"/>          </MenuItem>          <MenuItem Header="菜單二"></MenuItem>        </ContextMenu>      </Grid.ContextMenu>    </Grid>

關(guān)于WPF中怎么自定義MenuItem樣式就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

當(dāng)前題目:WPF中怎么自定義MenuItem樣式-創(chuàng)新互聯(lián)
當(dāng)前路徑:http://www.muchs.cn/article42/cdeohc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷品牌網(wǎng)站建設(shè)、網(wǎng)站設(shè)計公司、ChatGPT、網(wǎng)站改版、網(wǎng)站導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司