WPFスクロールビューアに水平スクロールバーを表示するのに問題があります。にはScrollViewer
、入力オブジェクトに基づいてコンテンツを動的にレンダリングするユーザーコントロールが含まれているため、サイズが可変である可能性があります。レンダリング時に、ユーザーコントロールの幅と高さを正しいサイズに設定します。
HorizontalScrollBarVisibility
Visibleに設定しました。これにより、常に表示されるようになりますが、表示されることはありません。有効化/無効化も試してみましたCanContentScroll
が、違いはないようです。
垂直スクロールバーは問題なく正常に機能します。
ScrollViewer scroll = new ScrollViewer();
scroll.HorizontalContentAlignment = HorizontalAlignment.Left;
scroll.VerticalContentAlignment = VerticalAlignment.Top;
scroll.HorizontalScrollBarVisibility = ScrollBarVisibility.Visible;
scroll.CanContentScroll = true;
Grid.SetRow(scroll, 1);
GalaxyViewer viewer = new GalaxyViewer(g);
viewer.HorizontalAlignment = HorizontalAlignment.Left;
viewer.VerticalAlignment = VerticalAlignment.Top;
viewer.HideShips();
viewer.IsEditable = this.IsEditable;
viewer.GalaxyEdited += this._galaxyEditedHandler;
if (this._activePlayer > 0 && !this.IsEditable) viewer.ShowShipsForPlayer(this._activePlayer);
scroll.Content = viewer;
ScrollViewer.SetCanContentScroll(viewer, true);
ScrollViewer.SetHorizontalScrollBarVisibility(viewer, ScrollBarVisibility.Visible);
scroll.UpdateLayout();
grid.Children.Add(scroll);
誰かがこれについて何かアイデア/解決策を持っていますか?