ElementHost 阴影效果

发布于 2024-11-09 14:19:53 字数 1083 浏览 0 评论 0原文

我正在使用 ElementHost 在 WinForms 控件中托管 WPF 用户控件。我的 WPF 控件具有 DropShadowEffect,但它未显示在屏幕上。 WPF 控件是扁平的。我需要做什么?这是我的代码:

public WinFormsUserControl3()
{
            InitializeComponent();
            elementHost1 = new ElementHost() { Child = new MyWPFUserControl(), AutoSize=true};
            Controls.Add(elementHost1);
}

MyWPFUserControl xaml:

<UserControl x:Class="WindowsFormsApplication1.MyWPFUserControl"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:WindowsFormsApplication1"
    Height="113" Width="107" Padding="10" Background="Red"  >
    <UserControl.Effect>
        <DropShadowEffect></DropShadowEffect>
    </UserControl.Effect>
    <StackPanel Background="Yellow">
        <Button Content="Button 1" Padding="5" Margin="5" />
        <Button x:Name="Button2" Padding="5" Margin="5" Content="Button 2" />
    </StackPanel>
</UserControl>

I am using ElementHost to host a WPF user control in a WinForms control. My WPF control has DropShadowEffect but it is not shown on the screen. The WPF control is flat. What do I need to do? Here is my code:

public WinFormsUserControl3()
{
            InitializeComponent();
            elementHost1 = new ElementHost() { Child = new MyWPFUserControl(), AutoSize=true};
            Controls.Add(elementHost1);
}

MyWPFUserControl xaml:

<UserControl x:Class="WindowsFormsApplication1.MyWPFUserControl"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:WindowsFormsApplication1"
    Height="113" Width="107" Padding="10" Background="Red"  >
    <UserControl.Effect>
        <DropShadowEffect></DropShadowEffect>
    </UserControl.Effect>
    <StackPanel Background="Yellow">
        <Button Content="Button 1" Padding="5" Margin="5" />
        <Button x:Name="Button2" Padding="5" Margin="5" Content="Button 2" />
    </StackPanel>
</UserControl>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

少钕鈤記 2024-11-16 14:19:53

这是 DropShadowEffect 的示例 XAML 代码

<UserControl x:Class='SilverlightApplication3.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' 
    mc:Ignorable='d' 
    d:DesignWidth='640' 
    d:DesignHeight='480'>
    <Canvas Height="Auto" Width="Auto" Background="White">
        <TextBlock Height="49" Width="814" Canvas.Left="22" Canvas.Top="18" 
                   Text="this is a test" TextWrapping="Wrap" 
                   d:LayoutOverrides="Height" FontSize="30" FontFamily="Arial">
      <TextBlock.Effect>
        <DropShadowEffect/>
      </TextBlock.Effect>
        </TextBlock>
    </Canvas>
</UserControl>

This is a sample XAML code for DropShadowEffect

<UserControl x:Class='SilverlightApplication3.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' 
    mc:Ignorable='d' 
    d:DesignWidth='640' 
    d:DesignHeight='480'>
    <Canvas Height="Auto" Width="Auto" Background="White">
        <TextBlock Height="49" Width="814" Canvas.Left="22" Canvas.Top="18" 
                   Text="this is a test" TextWrapping="Wrap" 
                   d:LayoutOverrides="Height" FontSize="30" FontFamily="Arial">
      <TextBlock.Effect>
        <DropShadowEffect/>
      </TextBlock.Effect>
        </TextBlock>
    </Canvas>
</UserControl>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文