編集:解決済みです。私はそれで眠って、ブラッドリーのコメントは私にトンを助けた!ありがとう!ToggleSwitchの状態をC#とXAMLの変数に格納する
私は一連のToggleSwitchesを持っています。
// Parent Toggle (resets everything)
private void PrimaryToggle_Toggled(object sender, RoutedEventArgs e)
{
if (PrimaryToggle.IsOn == true)
{
Child1Toggle.IsOn = false;
Child2Toggle.IsOn = true;
Child3Toggle.IsOn = false;
Child4Toggle.IsOn = true;
}
else if (PrimaryToggle.IsOn == false)
{
this.allToggles(false);
}
}
/* This is where I need to store the current state of the child toggles
so when it turns off it will restore the saved state of them */
private void SecondaryToggle_Toggled(object sender, RoutedEventArgs e)
{
if (SecondaryToggle.IsOn == true)
{
/* Need to store current state of children toggles
In this section here: */
Child1Toggle.IsOn = true;
Child2Toggle.IsOn = true;
Child3Toggle.IsOn = false;
Child4Toggle.IsOn = false;
}
if (SecondaryToggle.IsOn == false && PrimaryToggle.IsOn == true)
{
/* Need to restore previous state of children
toggles in this section here: */
}
}
だから、問題は、私が追跡しようとしているので、私はC#にはかなり新しいですです:私はものを持って後ろに、このようなセットアップコードで
<ToggleSwitch
x:Name="PrimaryToggle"
Header="Primary"
Toggled="PrimaryToggle_Toggled"/>
<ToggleSwitch
x:Name="SecondaryToggle"
Header="Secondary"
Toggled="SecondaryToggle_Toggled"/>
<ToggleSwitch x:Name="Child1Toggle" Header="Child 1" />
<ToggleSwitch x:Name="Child2Toggle" Header="Child 2" />
<ToggleSwitch x:Name="Child3Toggle" Header="Child 3" />
<ToggleSwitch x:Name="Child4Toggle" Header="Child 4" />
:ここではノウハウのものが設定されていますこれを処理する最善の方法。これまでの研究に基づいて、私はINotifyPropertyChangedを使用し、保存する必要があるすべてのトグルでバインディングを設定する必要があるかもしれないという結論に達しましたが、実際にどこから始めるべきかわかりません。私はいくつかをやった{取得;セット; }しばらくして使ってみたが、しばらく使っていないので、私は脳を持っている。
どこから始めたらよいですか?
ありがとうございます!
私はあなたが求めているものを正確に理解しているかどうかはわかりませんが、各トグルに対してブール変数を宣言して状態を保存する必要があるようです。クラスレベルで宣言し、トグルの '.IsOn'プロパティに設定して保存し、' IsOn'を変数の値に設定してリロードします。 –
申し訳ありませんが、私はそれを少し良く説明していたはずです。基本的にPrimaryToggleを切り替えると、少数の子供が特定の値に切り替わるように設定されます。その後、私は子供と一緒にいくつかの視覚的なオプションを変更するために切り替えることができます。しかし、私は再びすべてのトグルを変更するセカンダリトグルを持っていますが、セカンダリトグルがIsOn == falseに設定されている場合、セカンダリトグルをトグルする前の状態に戻るようにします。 –
私はC#の知識が不足していることをお詫びします。(私は現時点では学んでいますが、今は主にXAMLを行っています –