我的silveright页面只显示我的自定义UserControl

时间:2010-11-21 21:24:26

标签: user-controls silverlight-4.0

我正在尝试编写自己的UserControl - 一个“可编辑的”ComboBox,因此用户可以写出他想要的项目的名称(尽管与我的问题无关)。我决定用User Control(而不是自定义控件)实现它,所以我创建了以下xaml:

<UserControl x:Class="EnhancedCombBox.Silverlight.EnhancedComboBox"> 
    <Canvas Height="25" Width="160">
        <ComboBox x:Name="combo" Width="160" Height="25" SelectionChanged="combo_SelectionChanged" ItemsSource="{Binding}"></ComboBox>
        <TextBox x:Name="txtBox" Height="25" Width="140" TextChanged="txtBox_TextChanged" KeyUp="txtBox_KeyUp" KeyDown="txtBox_KeyDown" GotFocus="txtBox_GotFocus"></TextBox>
    </Canvas>

(我删除了名称空间以缩短xaml)。 我在主页上使用了我的新控件,如下所示:

<UserControl x:Class="ComboBox.Silverlight.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:sdk="clr-namespace:EnhancedCombBox.Silverlight;assembly=EnhancedCombBox.Silverlight"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="400">

<StackPanel>
    <Button>OK</Button>
    <sdk:EnhancedComboBox></sdk:EnhancedComboBox>
</StackPanel>

正如您所看到的,我使用Button和我的新控件创建了一个简单的StackPanel布局。在设计师看来,一切看起来都很正常 - 我看到下面的Button和我的控件。但是当我运行它时 - 只显示我的控件。 有人可以向我解释一下我错过了什么吗?

1 个答案:

答案 0 :(得分:1)

我已经尝试过您的代码并在我的系统中正常运行。尝试更改浏览器。您使用的是哪个版本的Silverlight。我试过SilverLight 4。