Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 当其他控件更改大小时,WPF会更改控件在列表框中的位置_C#_Wpf_Xaml - Fatal编程技术网

C# 当其他控件更改大小时,WPF会更改控件在列表框中的位置

C# 当其他控件更改大小时,WPF会更改控件在列表框中的位置,c#,wpf,xaml,C#,Wpf,Xaml,我有一个列表框项目的模板,当前看起来如下: <ListBoxItem> <Grid Background="DarkOrange" MaxWidth="431"> <TextBlock TextWrapping="WrapWithOverflow" Width="431"> Lorem ipsum dolor sit amet, consectetu

我有一个列表框项目的模板,当前看起来如下:

        <ListBoxItem>
            <Grid Background="DarkOrange" MaxWidth="431">
                <TextBlock TextWrapping="WrapWithOverflow" Width="431">
                    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras nec tempus sem. 
                    Nunc lobortis magna sed odio ullamcorper sollicitudin. Etiam porttitor malesuada vestibulum. 
                    Nullam et efficitur nibh, sit amet tristique felis. 
                    Fusce vel accumsan dui. Duis aliquam nulla ac turpis vestibulum rutrum. 
                    Phasellus vitae felis at magna ultricies suscipit lacinia eu ipsum.
                </TextBlock>
            </Grid>
        </ListBoxItem>

Lorem ipsum dolor sit amet,是一位杰出的献身者。CRA nec tempus sem。
这是一个巨大的挑战。前庭门。
没有效率,坐在猫的旁边。
酒后驾车。杜瓦是一种无茎的芦苇。
高等医学院猫科动物生命研究所。
随着文本长度的变化,文本块的高度和后面网格背景的大小也会随之变化


如何在Textblock下面添加MediaElement控件,使其(和背景)随着Textblock的大小上下移动?

您可以为
网格定义行。将第一行的
高度
定义为
Auto
,这将把行的
高度
调整为其内容的
实际高度。对于第二行高度,可以定义
*
,这将使其填充网格的其余部分

    <Grid Background="DarkOrange" MaxWidth="431">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height ="*"/>
    </Grid.RowDefinitions>
    <TextBlock TextWrapping="WrapWithOverflow" Width="431">
                Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras nec tempus sem. 
                Nunc lobortis magna sed odio ullamcorper sollicitudin. Etiam porttitor malesuada vestibulum. 
                Nullam et efficitur nibh, sit amet tristique felis. 
                Fusce vel accumsan dui. Duis aliquam nulla ac turpis vestibulum rutrum. 
                Phasellus vitae felis at magna ultricies suscipit lacinia eu ipsum.
    </TextBlock>
    <MediaElement Grid.Row="1"></MediaElement>
</Grid>

Lorem ipsum dolor sit amet,是一位杰出的献身者。CRA nec tempus sem。
这是一个巨大的挑战。前庭门。
没有效率,坐在猫的旁边。
酒后驾车。杜瓦是一种无茎的芦苇。
高等医学院猫科动物生命研究所。

您可以使用
StackPanel
并用您的元素填充此面板。这将负责调整大小。另一种方法是扩展
网格
/
列表视图
,监听子元素的每个大小变化,然后将它们正确对齐。这似乎不起作用,没有显示MediaElement。啊,我的错误,我只需要给它一个宽度和高度!