2016-03-15 176 views
0

我有一個WPF應用程序。 我使用telerik,並在其中一個窗格中有一個WindowsFormsHost來承載winforms。 我的問題是:每當我以一種水平滾動變爲可見的方式調整窗格大小時,滾動程序的行爲就會變得更奇怪:如果滾動條一直向右移動,那麼所顯示的winforms/WindowsFormsHost就是一路向左,反之亦然。 我嘗試玩snoop,改變FlowDirection但它沒有幫助(和FlowDirection總是LeftToRight)。 有什麼建議嗎?滾動條反向/相反方向顯示

這是代碼的培訓相關部分:

<telerik:RadDocking PanesSource="{Binding Items}" telerik:RadDocking.SerializationTag="itemDocking" x:Name="itemDocking" BorderBrush="Transparent" BorderThickness=" 
    <telerik:RadDocking.DocumentHost> 
     <telerik:RadSplitContainer BorderBrush="Transparent" BorderThickness="0"> 
      <telerik:RadPaneGroup BorderBrush="Transparent" BorderThickness="0"> 
       <telerik:RadDocumentPane BorderBrush="Transparent" BorderThickness="0" telerik:RadDocking.SerializationTag="MainItemHost" IsHidden="False" Visibility="Collapsed" CanUserClose="False"> 
         <WindowsFormsHost x:Name="itemFormsHost"> 

         </WindowsFormsHost> 
       </telerik:RadDocumentPane> 
      </telerik:RadPaneGroup> 
     </telerik:RadSplitContainer> 
    </telerik:RadDocking.DocumentHost> 
+0

你的意思是說,當你向右移動你的滾動屏幕上的數據向左? – BugFinder

+0

是的,這是我的問題 –

+0

,但這正是它應該做的,當你向右滾動,你正在移動查看右側的東西,所以事情會左移空間 – BugFinder

回答

0

後BugFinder的評論,我開始尋找在XAML/xaml.cs該代碼的整體解決方案。 當我找不到任何東西時,我明白它必須在Winforms中。 顯然形式的項目(這是一個樹型控件)的一個了:

tree.RightToLeft = RightToLeft.Yes; 

造成滾動到行爲方式(即使整個樹顯示是左到右)。 我知道,當我注意到當我移動滾動時,它隻影響樹(佔用整個長度)和窗體中的工具欄,所以我知道bug在樹中。

希望這可以幫助別人,並感謝你BugFinder指導我的解決方案。