Windows phone 7 如何在Coding4Fun MessagePrompt中删除边框

Windows phone 7 如何在Coding4Fun MessagePrompt中删除边框,windows-phone-7,windows-phone-7.1,Windows Phone 7,Windows Phone 7.1,我按照这个示例在coding4funmessageprompt中显示我的usercontrol。 当点击页面底部的主页图标时,我打开MessagePromt,它有我的UserControl和两个按钮,如下图所示 但由于某种原因,出现了这个浅白的边界,我无法确定它来自哪里 注意:我已经为我的usercontorl和其中的所有控件设置了边框透明和0厚度。 我只想展示蓝色的面板,没有白色的边框,它的宽度是300 有人知道吗 我使用了MessagePrompt控件,它找不到任何方法来禁用或隐藏边框。这

我按照这个示例在coding4funmessageprompt中显示我的usercontrol。

当点击页面底部的主页图标时,我打开MessagePromt,它有我的UserControl和两个按钮,如下图所示

但由于某种原因,出现了这个浅白的边界,我无法确定它来自哪里

注意:我已经为我的usercontorl和其中的所有控件设置了边框透明和0厚度。 我只想展示蓝色的面板,没有白色的边框,它的宽度是300

有人知道吗


我使用了MessagePrompt控件,它找不到任何方法来禁用或隐藏边框。这是MessagePrompt控件中的一种阴影效果,可以提供类似弹出窗口的外观

但是,即使您无法删除它,您也可以通过将MessagePrompt的Width属性设置为实际的blue UserControl(本例中为300)来减少其影响。

我从apphub论坛上的“Eric Fleck-Microsoft”获得了帮助。以下是他的解决方案:

<phone:PhoneApplicationPage    
    ...    
    xmlns:c4f="clr-namespace:Coding4Fun.Phone.Controls;assembly=Coding4Fun.Phone.Controls">   

    <phone:PhoneApplicationPage.Resources>  
        <ControlTemplate x:Key="MsgPropmtNoBorder" TargetType="c4f:MessagePrompt">   
            <Grid VerticalAlignment="Stretch">   
                <Rectangle Fill="{StaticResource TransparentBrush}" />  

                <Border VerticalAlignment="Top"    
                        Margin="10"    
                        Background="{TemplateBinding Background}"    
                        BorderThickness="0"    
                        BorderBrush="{StaticResource PhoneForegroundBrush}">   

                    <StackPanel Margin="10">   
                        <TextBlock    
                                    Text="{TemplateBinding Title}"    
                                    Margin="0,-10,-25,10"    
                                    FontSize="30"    
                                    TextWrapping="Wrap" FontFamily="Segoe WP Light" />  
                        <ContentPresenter Content="{TemplateBinding Body}" />  
                        <StackPanel    
                                    Margin="0,10,0,0"  
                                    Name="actionButtonArea"  
                                    Orientation="Horizontal"  
                                    HorizontalAlignment="Center" />  
                    </StackPanel>  

                </Border>  
            </Grid>  

        </ControlTemplate>  
    </phone:PhoneApplicationPage.Resources>


        MessagePrompt prompt = new MessagePrompt();    
        prompt.Body = new WPUC();    
        prompt.ActionPopUpButtons.Clear();    
        prompt.Overlay = new SolidColorBrush(Color.FromArgb(155, 41, 41, 41));   
        prompt.Template = (ControlTemplate)this.Resources["MsgPropmtNoBorder"];   

        prompt.Show(); 

MessagePrompt prompt=新建MessagePrompt();
prompt.Body=newwpuc();
prompt.actionPopubButtons.Clear();
prompt.Overlay=新的SolidColorBrush(Color.FromArgb(155,41,41,41));
prompt.Template=(ControlTemplate)this.Resources[“MsgPropmtNoBorder”];
prompt.Show();
下面是结果弹出窗口:

我已经试过了,但出于某种原因,它会添加一些填充或边距。我已将控件的填充、边距等设置为0。不过我会再试一次。@NadAnd,xml代码会出现在页面的.xaml中,其中包含打开弹出窗口的按钮。在我的例子中,左下角的Home按钮是我的按钮,它位于用户控件中。所以我把xml代码放在我的UC的.xaml中。但是我想你也可以把它放到app.xaml中,我还没有试过。然后你需要在后面的代码中相应地引用模板。我这样做了,但身体也消失了另一个问题。。没有XAML有没有办法做到这一点?@nada,我也不确定。您是否介意发布您的代码,或者只是在示例页面中试用并发布它。您可能希望尝试将其发布在windows Phone开发中心论坛上。