就像Fluent.RibbonWindow
一樣,我需要控件來粘貼窗口的標題/邊框。
我嘗試從課堂中提取RibbonWindow
,但我總是遇到麻煩。我只是不能這樣做...
有人可以幫助我嗎?
我基本上需要將窗口的客戶區擴展到整個窗口。
我需要將客戶區擴展到框架中,不是框架進入客戶區!超出WPF窗口的控件?
2
A
回答
2
自定義鑲邊功能允許應用程序控制窗口的外框,以便可以在標題欄上繪製WPF內容。
這聽起來像是你在找什麼:WPF Shell Integration Library
1
我曾經將其置於一個無框,最上和最透明的窗口增加了一個Outlook風格的按鈕,將非客戶區。
這是該窗口繼承了基類:
public class WindowHeaderButton : Window
{
private readonly Window _owner;
public WindowHeaderButton(Window owner)
{
_owner = owner;
_owner.Loaded += owner_Loaded;
_owner.LocationChanged += owner_LocationChanged;
_owner.StateChanged += owner_StateChanged;
_owner.SizeChanged += owner_SizeChanged;
_owner.Deactivated += _owner_Deactivated;
_owner.Activated += _owner_Activated;
Activated += WindowHeaderButton_Activated;
SizeToContent = SizeToContent.WidthAndHeight;
WindowStyle = WindowStyle.None;
AllowsTransparency = true;
Background = new SolidColorBrush(Colors.Transparent);
ShowInTaskbar = false;
}
void WindowHeaderButton_Activated(object sender, System.EventArgs e)
{
Opacity = 1;
}
void _owner_Activated(object sender, System.EventArgs e)
{
Opacity = 1;
}
void _owner_Deactivated(object sender, System.EventArgs e)
{
Opacity = 0.75;
}
private void owner_Loaded(object sender, RoutedEventArgs e)
{
Owner = _owner;
Show();
UpdatePosition();
}
private void owner_SizeChanged(object sender, SizeChangedEventArgs e)
{
UpdatePosition();
}
private void owner_StateChanged(object sender, System.EventArgs e)
{
UpdatePosition();
}
private void owner_LocationChanged(object sender, System.EventArgs e)
{
UpdatePosition();
}
private void UpdatePosition()
{
Top = _owner.Top + 1;
Left = _owner.Left + 8;
}
}
正如你看到一個有處理很多窗口的行爲樣活性的狀態和位置改變自己,這很容易可以得到一個有點亂。
+0
我不確定這個......這更像是一個小故障。 – Vercas 2011-06-12 22:00:17
相關問題
- 1. WPF附加彈出窗口與控件
- 2. 位置在窗口WPF控件的?
- 3. WPF彈出窗口
- 4. WPF窗口更改另一個窗口的控件的值
- 5. WPF + PRISM - 顯示帶有控件的模式彈出窗口?
- 6. 從非窗口類訪問WPF控件
- 7. 從WPF窗口訪問所有控件
- 8. WPF動態添加控件到窗口
- 9. 從WPF窗口獲取特定控件?
- 10. WPF窗口和控件樣式
- 11. WPF窗口/用戶控件繼承XAML
- 12. 在WPF DatePicker控件上配置日期彈出窗口
- 13. 自定義用戶控件不出現在WPF窗口中?
- 14. 需要控制窗口的WPF應用
- 15. WPF控制中的本地Win32窗口
- 16. 控制檯項目中的WPF窗口?
- 17. AdornerDecorator爲WPF窗口的變化控制
- 18. 開放WPF用戶控件的winform窗口縮小父的winform窗口
- 19. WPF-App從其他AppDomain嵌入WPF窗口/控件
- 20. 觸發事件從另一個WPF窗口WPF窗口
- 21. 居中彈出窗口/用戶控件
- 22. 彈出式窗口瀏覽器控件
- 23. silverlight彈出式窗口控件問題
- 24. WPF相對於主窗口的彈出窗口位置
- 25. Java FX超出窗口的屏幕
- 26. Perl win32 ::超出窗口的GUI文本
- 27. wpf彈出窗口的比例動畫
- 28. 在WPF窗口內嵌入控制檯窗口
- 29. WPF窗口IsFocused
- 30. WPF:窗口SetBounds
這真的有幫助! :D – Vercas 2011-06-12 22:00:01