DotNet Maui - 按钮 - 控制图像源大小

Jea*_*and 2 maui

当我使用 ContentLayout 将文本放在 ImageSource 下方时,如何调整图像大小。

<HorizontalStackLayout>
    
    <Button MaximumHeightRequest="50"
            Text="Open"
            VerticalOptions="Start"
            ImageSource="file_open.png"
            ContentLayout="left,50" />
    <Button Text="Open file test"
            ContentLayout="Top,0"
            VerticalOptions="Start"
            ImageSource="file_open.png"
            Command="{Binding DivideBy2Command}" />
    <ImageButton x:Name="Toto"
            MaximumHeightRequest="50"
            VerticalOptions="Start"
            Source="file_open.png"
            Command="{Binding DivideBy2Command}" />
</HorizontalStackLayout>
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

根据 ToolmakerSteve 和 Alexandar May(MSFT Stackoverflow 用户)的反馈以及使用 Padding,我能够得到我需要的东西。这里是更新的代码。

<HorizontalStackLayout>
    <Button Text="Open"
            HeightRequest="50"
            VerticalOptions="Start"
            ImageSource="file_open.png"
            ContentLayout="left, 0"
            />
    <Button 
        VerticalOptions="Start"
        Text="Open File"
        FontSize="10"
        ImageSource="file_open.png"
        ContentLayout="Top,-10"
        Padding="2,-10,2,2"
        HeightRequest="50"
        WidthRequest="50"
        />
    <ImageButton 
        VerticalOptions="Start"
        Source="file_open.png"
        MaximumHeightRequest="50"  
        />
</HorizontalStackLayout>
Run Code Online (Sandbox Code Playgroud)

这里是输出

在此输入图像描述

Ale*_*SFT 5

这可以通过设置按钮HeightRequest和来实现,如下所示:WidthRequest

    <HorizontalStackLayout >

        <Button 
            VerticalOptions="Start"
            MaximumHeightRequest="50"
            Text="Open"
            ImageSource="file_open.png"
            ContentLayout="left, 50"
            />

        <Button 
            VerticalOptions="Start"
            Text="Open file test"
            FontSize="10"
            ImageSource="file_open.png"
            Command="{Binding DivideBy2Command}"
            ContentLayout="Top,0"
            
            HeightRequest="100"
            WidthRequest="100"
            />

        <ImageButton 
            VerticalOptions="Start"
            x:Name="Toto"
            Source="file_open.png"
            MaximumHeightRequest="50"
            Command="{Binding DivideBy2Command}"    
            />

    </HorizontalStackLayout>

Run Code Online (Sandbox Code Playgroud)

  • 这是更新中修复的错误吗?不知怎的,这对我不起作用。图标保持较大,仅设置按钮高度。 (5认同)