我可以在WPF中的文本框中放置控件吗?

时间:2017-06-24 12:51:57

标签: wpf textbox

例如Button,Link,Image,... 此代码不起作用:

<Grid>
    <TextBox 
        HorizontalAlignment="Left" 
        Height="180" 
        Margin="38,35,0,0" 
        TextWrapping="Wrap" 
        Text="TextBox" 
        VerticalAlignment="Top" 
        Width="442"
        >
        <Button 
            Content="Button" 
            HorizontalAlignment="Left" 
            Margin="149,105,0,0" 
            VerticalAlignment="Top" 
            Width="75" 
            RenderTransformOrigin="-2.78,1.376"
            />
    </TextBox>
</Grid>

1 个答案:

答案 0 :(得分:0)

不是没有编写自己的自定义控件。这是正确的解决方案。

以下是自定义控件的一个很好的示例:https://stackoverflow.com/a/6419556/1624581

或者,作为一个hacky和快速解决方案您可以将按钮和文本框放在容器(例如stackpanel或网格)中,然后在按钮上使用负边距,使其显示在文本框。然后,您可以在文本框的右侧应用填充,以便输入文本不会与按钮重叠。话虽如此,我强烈建议您编写自定义控件,因为负边距可能会导致长期维护问题。