WPFスクロールビューアで水平スクロールバーを表示するのに問題があります。 ScrollViewer
には、入力オブジェクトに基づいてコンテンツを動的にレンダリングするユーザーコントロールが含まれているため、可変サイズの可能性があります。レンダリングすると、ユーザーコントロールの幅と高さが正しいサイズに設定されます。WPF用水平スクロールバーScrollViewer never displayed
私は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);
誰もがこのためのアイデアやソリューションを持っていますか?
興味深いことに水平スクロールバーは、私は、フォーム – RobV