WPF名称''在当前上下文中不存在

时间:2013-11-01 14:52:29

标签: c# wpf

我遇到了一个我无法弄清楚的问题。尝试从同一名称空间中的类调用函数。这是我的班级;

namespace MYNAMESPACE{
class myClass
{
    public static string myFunction(string s)
    {
        //Function Logic
    }
}}

然后在我的窗户中;

namespace MYNAMESPACE{
public partial class myWindow : Window
{
    public myWindow()
    {
        string s1; 
        s1 = myFunction("My string");

        InitializeComponent();
    }
}}

问题是调用函数给出“当前上下文中不存在名称'”。然而,如果我把它改成它就可以了;

s1 = MYNAMESPACE.myClass.myFunction("My string");

为什么不在上下文中?

3 个答案:

答案 0 :(得分:1)

那是因为myClass和myWindow不是同一个上下文。您所涉及的行的当前上下文是MYNAMESPACE.myWindow,在此上下文中没有名为myFunction的函数。所以你需要像你一样拼出整个背景。

答案 1 :(得分:1)

检查.NET框架,建立引用和项目。将其更改为项目属性中的最新.NET框架,清理解决方案并重建它。

答案 2 :(得分:0)

此错误可能由于几种不同的原因而出现。当我尝试在DataTemplate中使用视图时,这发生了。例如:

<Grid>
    <ItemsControl>
        <ItemsControl.ItemTemplate>
            <DataTemplate>
                <views:MyView x:Name="MyViewControl"/>
            </DataTemplate>
        </ItemsControl.ItemTemplate>
    </ItemsControl>
<Grid>

WPF新秀错误;如果您这样做,则后面的代码将无法识别 MyViewControl