2011-06-30 36 views
9

Tôi mới tham gia WPF. Và bởi tôi mới có nghĩa là tôi mới bắt đầu nó ngay hôm nay sau khi nhận được .net 3.5. Tôi thường làm GUI phát triển trong Windows Forms và giống như ToolStripMenu tuyệt vời. Nhưng khi tôi nhìn thấy Menu WPF, nó quá xấu đến nỗi nó làm tôi nhớ đến những ngày Win32 Api của tôi. Có cách nào để thay đổi phong cách của một menu WPF để làm cho nó trông giống như một menu Windows Forms?Làm thế nào để làm cho trình đơn WPF trông giống như một Windows Forms ToolStripMenu?

+0

Bạn nghĩa này (hình ảnh WinForms) một http://www.code-magazine.com/ArticleImage.aspx?QuickID=0601071&Image=fig_007.gif? –

+1

Yup. thông báo các winforms gradient ưa thích có trên các menu và thanh công cụ của nó – ApprenticeHacker

+0

tôi đã chờ đợi 20 phút và chỉ có 12 lượt xem và ** ONE RESPONSE? ** là tất cả mọi người đã chết? – ApprenticeHacker

Trả lời

6

thử điều này:

Giới thiệu về phong cách và khuôn mẫu: http://msdn.microsoft.com/en-us/library/ms745683.aspx

Một phong cách mới cho thanh công cụ http://msdn.microsoft.com/en-us/library/aa970772.aspx

Ngoài tìm kiếm WPF ToolBar phong cách

Edit: Có - nhưng thêm một menu như thế này và thanh công cụ làm thay đổi kiểu menu (dán mới dự án):

<Grid> 
<Grid.RowDefinitions> 
    <RowDefinition Height="Auto"></RowDefinition> 
    <RowDefinition Height="*"></RowDefinition> 
</Grid.RowDefinitions> 
<ToolBarTray > 
    <ToolBar > 
    <Menu> 
    <MenuItem Header="Hey"> 
     <MenuItem Header="lo"></MenuItem> 
    </MenuItem> 
    <MenuItem Header="Ho"> 
     <MenuItem Header="la"></MenuItem> 
    </MenuItem> 
    </Menu> 
</ToolBar> 
</ToolBarTray> 

+0

Tôi muốn biết về các menu không phải thanh công cụ. Nhưng điều này vẫn hữu ích. Cảm ơn! – ApprenticeHacker

+0

Tuyệt vời, cảm ơn! Tôi đã sai về WPF, nó thậm chí còn tốt hơn so với các hình thức cửa sổ! một upvote và đánh dấu! – ApprenticeHacker

1

Menu, giống như hầu hết các điều khiển WPF có rất ít kiểu dạng theo mặc định.

Nhưng điều đó chỉ là theo mặc định, bạn có thể thêm phong cách của riêng bạn và làm đẹp WinForms thật dễ dàng.

Chỉ cần một chút khởi động:

<Menu DockPanel.Dock="Top" > 
     <Menu.Background> 
      <LinearGradientBrush EndPoint="0,1" StartPoint="0,0"> 
       <GradientStop Color="White" Offset="0" /> 
       <GradientStop Color="Blue" Offset="1" /> 
      </LinearGradientBrush> 
     </Menu.Background> 
     <MenuItem Header="_File" > 
+0

Cảm ơn! Vì vậy, bạn thậm chí có thể quyết định những gì gradient để sử dụng! – ApprenticeHacker

+0

Có, với nhiều điểm và màu sắc tùy thích. Ngoài ra nhìn vào ImageBrush, RadialGradientBrush, ... Và sử dụng Styles. –

+0

@ HenkHolterman Liệu nó có ảnh hưởng xấu đến việc sử dụng bộ nhớ và hiệu suất không? – Adrian

Các vấn đề liên quan