私のリストで算術演算を実現したい場合、この場合: 列 "幅" *列 "高さ"は列 "部分"を書き直すべきです。 私はループを試みましたが、動作していません。 私は行にブレークポイントを置く:c#算術演算のリスト
_Area[i].Partial = _Area[i].width * _Area[i].height;
とデバッグ、私はこの行がreadedされていないと考えることができ、それらを停止することはありません。
これは私のコレクションビューモデルである:
public class CollectionVM_Area : BindableBase
{
private Values_Area _Area = new Values_Area();
public Values_Area Area
{
get { return _Area; }
set { SetProperty(ref _Area, value); }
}
public CollectionVM_Area()
{
_Area.Add(new Area()
{
width=10,
height=11,
});
_Area.Add(new Area()
{
width=5,
height=5,
Partial=1,
});
bool NeedPartial = false;
int i = 0;
while (NeedPartial = false && i < _Area.Count)
{
if (_Area[i].Partida == true)
{
NeedPartial = true;
}
else
{
i++;
}
}
if (NeedPartial==true)
{
_Area[i].Partial = _Area[i].width * _Area[i].height;
NeedPartial = false;
}
else
{
NeedPartial = true;
}
}
}
は私のプロジェクトでは、UWPですが、私は任意の助けが高く評価され、リストのWindowsフォームとでは違いはありませんだと思います。
'NeedPartial = false'行は実行されていますか?その場合は、プロジェクトを再構築して、再度デバッグする必要があります。そうでなければあなたの 'NeedPartial == true'(これは' if(NeedPartial) '条件が決して通過しないように簡略化することができます) – HimBromBeere
素早く返信いただきありがとうございます; NeedApart [=] .width * _Area [i] .height;が実行されていない – Julius
条件が満たされていない場合、 'NeedPartial'の値をチェックしてください' true'ですか?そうではありません。 (これは最後の 'if'ブランチの2番目のステートメントにも当てはまります) – HimBromBeere