C# 将情节提要绑定到从代码隐藏添加的元素

C# 将情节提要绑定到从代码隐藏添加的元素,c#,wpf,binding,storyboard,C#,Wpf,Binding,Storyboard,您好,我在WPF中得到了这个故事板,它工作得很好,但我需要加载我的用户控件以进行代码隐藏。(其中一些需要一些时间才能加载,因此我需要向用户提供有关加载进度的信息) 不管怎样,这是我现在的代码 <ObjectAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="businessCard" Storyboard.TargetProperty="(UIElement.Visibility)"&

您好,我在WPF中得到了这个故事板,它工作得很好,但我需要加载我的用户控件以进行代码隐藏。(其中一些需要一些时间才能加载,因此我需要向用户提供有关加载进度的信息)

不管怎样,这是我现在的代码

<ObjectAnimationUsingKeyFrames BeginTime="00:00:00"
    Storyboard.TargetName="businessCard"
       Storyboard.TargetProperty="(UIElement.Visibility)">
          <DiscreteObjectKeyFrame KeyTime="00:00:0.01">
             <DiscreteObjectKeyFrame.Value>
                 <Visibility>Visible</Visibility>
             </DiscreteObjectKeyFrame.Value>
          </DiscreteObjectKeyFrame>
 </ObjectAnimationUsingKeyFrames>
抛出和错误

'businessCard' name cannot be found in the name scope of 'System.Windows.Controls.Grid'.

您可以使用Storyboard.Target属性而不是Storyboard.TargetName。 首先删除XAML的TargetName属性,并将名称添加到动画中,以便可以在代码隐藏中引用该名称:

<ObjectAnimationUsingKeyFrames x:Name="MyObjectAnimation" BeginTime="00:00:00"
   Storyboard.TargetProperty="(UIElement.Visibility)">
      <DiscreteObjectKeyFrame KeyTime="00:00:0.01">
         <DiscreteObjectKeyFrame.Value>
             <Visibility>Visible</Visibility>
         </DiscreteObjectKeyFrame.Value>
      </DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
希望有帮助

'businessCard' name cannot be found in the name scope of 'System.Windows.Controls.Grid'.
<ObjectAnimationUsingKeyFrames x:Name="MyObjectAnimation" BeginTime="00:00:00"
   Storyboard.TargetProperty="(UIElement.Visibility)">
      <DiscreteObjectKeyFrame KeyTime="00:00:0.01">
         <DiscreteObjectKeyFrame.Value>
             <Visibility>Visible</Visibility>
         </DiscreteObjectKeyFrame.Value>
      </DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
var businessCard = new BusinessCard() {Name = "businessCard"};
MyGrid.Children.Add(businessCard);
MyObjectAnimation.SetValue(Storyboard.TargetProperty, businessCard)