C# 这个包含文本框的按钮的概念可能吗?

C# 这个包含文本框的按钮的概念可能吗?,c#,wpf,button,C#,Wpf,Button,最近,我一直在寻找一种方法,使TabControl中的选项卡可编辑,并在telerik的网站上找到了这种方法。这正是我想要的,但它让我想到了按钮的类似用法。我想知道是否有可能使用类似的东西,制作一个按钮来显示文本框,而不是内容演示者,比如说,右键单击按钮?我试着做一些像这样的工作,但到目前为止只得到了一个空白按钮 <Button x:Name="SB" Height="222" Width="222" Click="SB_Click"> <ContentControl.

最近,我一直在寻找一种方法,使
TabControl
中的选项卡可编辑,并在telerik的网站上找到了这种方法。这正是我想要的,但它让我想到了按钮的类似用法。我想知道是否有可能使用类似的东西,制作一个按钮来显示文本框,而不是内容演示者,比如说,右键单击按钮?我试着做一些像这样的工作,但到目前为止只得到了一个空白按钮

<Button x:Name="SB" Height="222" Width="222" Click="SB_Click">
    <ContentControl.ContentTemplate>
        <DataTemplate>
            <local:SuperButton Content="{Binding Path=x, Mode=TwoWay}"/>
        </DataTemplate>
    </ContentControl.ContentTemplate>
</Button>

其中x是一个字符串变量,使用上面链接中的代码(当然,更改了类名)

编辑:此按钮将位于itemscontrol中,因此我认为在xaml中命名内部元素不起作用,但我确实喜欢Wolfgang回答的简单性。

非常灵活,允许任何内容中的任何内容

这是完全有效的XAML:

<Button>
    <TextBox/>
</Button>

甚至:

<Button>
    <MediaElement Source="C:\Videos\WildLife.wmv"/>
</Button>

非常灵活,允许在任何内容中包含任何内容

这是完全有效的XAML:

<Button>
    <TextBox/>
</Button>

甚至:

<Button>
    <MediaElement Source="C:\Videos\WildLife.wmv"/>
</Button>

非常灵活,允许在任何内容中包含任何内容

这是完全有效的XAML:

<Button>
    <TextBox/>
</Button>

甚至:

<Button>
    <MediaElement Source="C:\Videos\WildLife.wmv"/>
</Button>

非常灵活,允许在任何内容中包含任何内容

这是完全有效的XAML:

<Button>
    <TextBox/>
</Button>

甚至:

<Button>
    <MediaElement Source="C:\Videos\WildLife.wmv"/>
</Button>

您只需在按钮内放置一个(例如)标签(文本块)和一个
文本框
,并设置其
可见性
属性。 这样,如果右键单击该按钮,将显示
文本框

<Button>
  <Grid>
    <TextBox Text=normal button caption" x:Name="label" />
    <TextBox 
       x:Name="textbox"
      Text="visible on right click" 
      MouseRightButtonDown="HandleRightClick"/>
  </Grid>
</Button>
您只需在按钮内放置一个(例如)标签(文本块)和一个
文本框
,并设置其
可见性
属性。 这样,如果右键单击该按钮,将显示
文本框

<Button>
  <Grid>
    <TextBox Text=normal button caption" x:Name="label" />
    <TextBox 
       x:Name="textbox"
      Text="visible on right click" 
      MouseRightButtonDown="HandleRightClick"/>
  </Grid>
</Button>
您只需在按钮内放置一个(例如)标签(文本块)和一个
文本框
,并设置其
可见性
属性。 这样,如果右键单击该按钮,将显示
文本框

<Button>
  <Grid>
    <TextBox Text=normal button caption" x:Name="label" />
    <TextBox 
       x:Name="textbox"
      Text="visible on right click" 
      MouseRightButtonDown="HandleRightClick"/>
  </Grid>
</Button>
您只需在按钮内放置一个(例如)标签(文本块)和一个
文本框
,并设置其
可见性
属性。 这样,如果右键单击该按钮,将显示
文本框

<Button>
  <Grid>
    <TextBox Text=normal button caption" x:Name="label" />
    <TextBox 
       x:Name="textbox"
      Text="visible on right click" 
      MouseRightButtonDown="HandleRightClick"/>
  </Grid>
</Button>

当然可能,尽管看起来很难:)为什么不将按钮的内容属性设置为文本框?当然可能,尽管看起来很难:)为什么不将按钮的内容属性设置为文本框?当然可能,虽然看起来你这样做很困难:)为什么不把按钮的内容属性设置为文本框呢?当然可以,尽管看起来您这样做很困难:)为什么不直接将按钮的内容属性设置为文本框?如果按钮位于itemscontrol中且命名不是选项,我将如何访问文本框?如果按钮位于itemscontrol中且命名不是选项,我将如何访问文本框?我将如何访问如果按钮位于itemscontrol内且命名不是选项,则访问文本框?如果按钮位于itemscontrol内且命名不是选项,则如何访问文本框?