C# 访问上下文菜单中的文本框

C# 访问上下文菜单中的文本框,c#,wpf,silverlight,contextmenu,C#,Wpf,Silverlight,Contextmenu,我有一个文本框,它是ContextMenu菜单项的一部分。然而,我似乎无法像访问上下文菜单之外的其他控件那样访问该文本框。这是我的XAML: <ListBox Name="ItemList"> <ListBox.Resources> <ContextMenu x:Key="listBoxItemContextMenu"> <MenuItem Header="Rename"&g

我有一个文本框,它是ContextMenu菜单项的一部分。然而,我似乎无法像访问上下文菜单之外的其他控件那样访问该文本框。这是我的XAML:

    <ListBox Name="ItemList">
        <ListBox.Resources>
            <ContextMenu x:Key="listBoxItemContextMenu">
                <MenuItem Header="Rename">
                    <TextBox Name="newFilename" KeyUp="renameFile" />
                </MenuItem>
            </ContextMenu>
        </ListBox.Resources>
        <ListBox.ItemContainerStyle>
            <Style TargetType="ListBoxItem">
                <Setter Property="ContextMenu" Value="{StaticResource listBoxItemContextMenu}"/>
            </Style>
        </ListBox.ItemContainerStyle>
    </ListBox>

我试图访问的文本框是“重命名文件”。

试试这段代码

ContextMenu cm = ItemList.Resources["listBoxItemContextMenu"] as ContextMenu;
MenuItem mi = cm.Items[0] as MenuItem;
TextBox tb = mi.Items[0] as TextBox;