选择要复制的文本框的文本

时间:2012-06-04 12:41:53

标签: wpf uibutton copy-paste

以下是应该发生的步骤

  1. 新的UC加载和证书生成我的exe

  2. 该证书的地址显示在文本框中(如下所述)

    所有这些步骤都会在UC加载时发生。

  3. 我需要一个复制按钮来复制该文本框的路径。

  4. 我正在使用下面的代码但是因为UC加载复制按钮是禁用的。为什么呢?

    <TextBox Grid.Column="1"  HorizontalAlignment="Stretch" Name="label1" VerticalAlignment="Stretch" Foreground="#FFF20C0C" IsManipulationEnabled="False" IsTabStop="False" IsUndoEnabled="False" BorderThickness="0" Background="{StaticResource {x:Static SystemColors.ControlBrushKey}}" TextWrapping="Wrap" IsReadOnly="True">
    
    <Button Grid.Row="2" Height="Auto" Width="Auto
                " Command="Copy" Content="Copy certificate address" HorizontalAlignment="Left" VerticalAlignment="Center" CommandTarget="{Binding ElementName=label1}"/>
    

2 个答案:

答案 0 :(得分:1)

处理按钮的点击事件并在那里进行复制。看起来应该是这样的:

ButtonClickHandler(object sender, EventArgs e) 
{
   Clipboard.SetText(label1.Text);
}

Clipboard.SetText()应该将label1的文本复制到Windows剪贴板。

答案 1 :(得分:1)

我假设您正在尝试使用ApplicationCommands.Copy。如果是这样,那么如果按钮位于ToolBarMenu之外,则复制按钮将始终显示为灰色。默认情况下,应用程序命令在FocusScopeToolBar中使用时会收到Menu;否则,FocusScope将需要手动设置。

请参阅SO问题:Copy Property to Clipboard

,而不是进一步详细说明