لماذا لا يتم احتواء شبكة WPF الخاصة بي في حاويةها؟

StackOverflow https://stackoverflow.com/questions/3722033

  •  03-10-2019
  •  | 
  •  

سؤال

لديّ عنصر تحكم مستخدم وداخله لديّ عناصر تحكم: 1) عنصر تحكم معايير البحث (تحكم مستخدم مخصص) و 2) Telerik Radgridview.

بصرف النظر عن ذلك ، لدي نافذة هي القذيفة لتطبيقي وفي ثلاث مناطق. عند فتح هذه النافذة ، انقر فوق زر ويتم إدراج عنصر تحكم المستخدم المذكور أعلاه في إحدى المناطق. الآن وقد تم تحميل عنصر تحكم المستخدم ، أقوم بتحرير معايير البحث الخاصة بي وانقر فوق الزر لإلغاء شبكتي بحوالي 1000 سجل. المشكلة هي أن شريط التمرير للشبكة لا يصبح ممكّنًا لأن التحكم في الشبكة يزيد إلى أقصى حد لتناسب حجم جميع البيانات الذي يمر عبر الشاشة.

الطريقة الوحيدة التي تعمل بها هذا بشكل صحيح هي تعيين خاصية الارتفاع للشبكة على قيمة مطلقة ولكن الشبكة لا حجمها مع النافذة.

لقد جربت كل ما يمكنني التفكير فيه: عندما أقوم في الشبكة بتعيين حجم DEF ROW على 200*، وضعت الشبكة في لوحة التفاف ، وضعتها في dockpanel ، وضبط العمودي لتمديد ، غيرت قفص الاتهام ، غيرت قفص الاتهام لوحة لمكدس لوحة.

صدَفَة:

<Window x:Class="WTS.CGCApplicationInterface.CGCApplicationShellView"
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
         xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
         xmlns:d="http://schemas.microsoft.com/expression/blend/2008"             
         xmlns:cal="http://www.codeplex.com/CompositeWPF"
         xmlns:inf="clr-namespace:WTS.CGCApplicationInterface.Infrastructure;assembly=WTSCGCApplicationInterface.Infrastructure"             
         mc:Ignorable="d" 
         d:DesignHeight="300" d:DesignWidth="300" Width="750" Height="480"
        Title="CGC Interface Window">       
<Grid> 
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto" />
        <RowDefinition Height="200*"/>            
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto" />
        <ColumnDefinition />
    </Grid.ColumnDefinitions>
    <ItemsControl cal:RegionManager.RegionName="MenuRegion" Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="0" />
    <ItemsControl cal:RegionManager.RegionName="SwitchboardRegion" Grid.Column="0" Grid.Row="1" />
    <ItemsControl cal:RegionManager.RegionName="MainRegion" Grid.Column="1" Grid.Row="1" />                            
</Grid>

تحكم المستخدم:

<UserControl x:Class="WTS.CGCApplicationInterfaceMVVM.Views.Oncor.OncorTimesheetCGC"
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
         xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
         xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
         xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"   
         xmlns:wtsControls="clr-namespace:WTS.CGCApplicationInterface.UserControls;assembly=WTSCGCApplicationInterface.Infrastructure"                  
         mc:Ignorable="d" 
         d:DesignHeight="300" d:DesignWidth="600" Background="Red">     
<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto" />
        <RowDefinition Height="200*" />
    </Grid.RowDefinitions>    

        <wtsControls:CGCQueryUserControl  Grid.Row="0"/>
        <telerik:RadGridView ItemsSource="{Binding Path=Timesheets}" AutoGenerateColumns="False" Grid.Row="1"
                                 ScrollViewer.VerticalScrollBarVisibility="Visible">
            <telerik:RadGridView.Columns>
                <telerik:GridViewToggleRowDetailsColumn></telerik:GridViewToggleRowDetailsColumn>
                <telerik:GridViewDataColumn Header="MyField1" UniqueName="AssociatedObject.MyField1" IsVisible="False" />
                <telerik:GridViewDataColumn Header="MyField2" UniqueName="AssociatedObject.MyField2" IsVisible="False" />


هل كانت مفيدة؟

المحلول

أتمنى أن أحصل على نقاط للإجابة على سؤالي. أنا أدرك أن هذا يمكن الاستفادة منه. ومع ذلك ، في قشرتي ، قمت بتغيير منطقة Contentrol إلى ContentControl وتعمل بشكل مثالي.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top