我想使用foreach获取subdata和subdata2值,但由于某种原因,我得到一个空引用异常.
XML:
<project>
<name>Name1</name>
<data>
<subdata>1</subdata>
<subdata2>1</subdata2>
</data>
<data>
<subdata>3</subdata>
<subdata2>2</subdata2>
</data>
</project>
Run Code Online (Sandbox Code Playgroud)
码:
XmlNode datanode = doc.DocumentElement.SelectSingleNode("/project/data");
XmlNode innerDataNode;
foreach (XmlNode dataVar in datanode)
{
innerDataNode = datanode.SelectSingleNode("/subdata");
int subdataVal = XmlConvert.ToInt16(innerDataNode.InnerText);
//(...)
}
Run Code Online (Sandbox Code Playgroud)
例外:
System.NullReferenceException:'对象引用未设置为对象的实例.innerDataNode为null.
我究竟做错了什么?
我有一个静态类(Evp),位于Models文件夹中。它有一个Name字符串,带有 getter 和 setter 以及 aPropertyChangedEventHandler及其代码:
public static event PropertyChangedEventHandler StaticPropertyChanged;
private static string _name
public static string Name{
get => _name;
set{
_name = value;
OnStaticPropertyChanged("Name"); } }
private static void OnStaticPropertyChanged(string propertyName)
{
StaticPropertyChanged?.Invoke(null, new PropertyChangedEventArgs(propertyName));
}
Run Code Online (Sandbox Code Playgroud)
在我的 XAML 文件中,这就是我尝试绑定的方式(如果我没记错的话,它在 WPF 4.5 中有效):
<Label Grid.Row="0" Grid.Column="1" TextColor="Beige" Text="{Binding Source={x:Static Models:Evp.Name}}" HorizontalTextAlignment="Center" VerticalTextAlignment="Center" FontSize="30"></Label>
Run Code Online (Sandbox Code Playgroud)
我Models在 XAML 中指定了文件夹ContentPage:
xmlns:Models="clr-namespace:Rdb.Models;assembly=Rdb"
Run Code Online (Sandbox Code Playgroud)
由于某种原因,它不起作用。我究竟做错了什么?另外,如何在代码隐藏中设置此绑定?
我在Excel中有一个数据集,其中有一些NaN值。问题是我应该获取列的平均值,但是我无法使用其中具有NaN值的行进行计算。如何使用函数解决此问题?(数据集有几百行,我不想手动执行。)
这是示例:

我不希望星期三和星期四平均下来,所以A选项为(15 + 4 + 7)/ 3,B选项为(9 + 4 + 1)/ 3。