私のプログラムでは、Idに相当するboolを変更するために、Xamarinアプリケーションのリストから現在のIDを取得しようとしています。XamarinのテーブルからIDを取得
このアプリケーションでは、ユーザーはリストと各要素に関連付けられたスイッチで表されます。目標は、スイッチがトグルされたときにテーブルのブール値をfalseからtrueに変更することです。私は.csで
[
(底部に向かってhandle_toggled参照)スイッチがトグルされたとき、私はブール値を更新ファイル:トグルスイッチを処理するとき
public partial class DefineBuilding : ContentPage
{
//string currentDefineDescription;
//int currentDefineId;
DefineTable current;
private const string Url = "http://localhost:5000/define";
private HttpClient _client = new HttpClient();
private ObservableCollection<DefineTable> _define;
public DefineBuilding(DefineTable defineList)
{
if (defineList == null) throw new ArgumentNullException();
//BindingContext = defineList;
//currentDefineId = defineList.defineId;
//currentDefineDescription = defineList.defineDescription;
current = defineList;
InitializeComponent();
//defineList = Current_item.BindingContext;
}
protected override async void OnAppearing()
{
var content = await _client.GetStringAsync(Url);
var posts = JsonConvert.DeserializeObject<IEnumerable<DefineTable>>(content);
_define = new ObservableCollection<DefineTable>(posts);
defineBuildingItems.ItemsSource = _define;
base.OnAppearing();
}
async void Handle_Toggled(object sender, Xamarin.Forms.ToggledEventArgs e)
{
//current.defineId =
current.defineBool = true;
defineDataService defineTable = new defineDataService();
await defineTable.UpdateData(current);
}
async void Handle_Clicked(object sender, System.EventArgs e)
{
await Navigation.PushAsync(new ChecklistPage());
}
}
}
は、しかし、私はすることはできませんよIdを手に入れる。私のxamlファイルではIdを取得することができますが、このIDをどのように適用するかはわかりません。
<StackLayout Orientation="Horizontal">
<StackLayout Orientation="Vertical">
<Label Text="{Binding defineDescription}"
HorizontalOptions="FillAndExpand" x:Name="Current_item"/>
</StackLayout>
<Switch BindingContext ="{Binding defineId}" HorizontalOptions="EndAndExpand"
Toggled="Handle_Toggled"/>
</StackLayout>
私のクラスに正しいIDを取得する方法上の任意のアイデア:ここ
は私のXAMLファイル(同上のBindingContext = "{バインディングdefineIdを}" を参照してください)からのサンプルですか?
これはうまくいきました。テーブルから他の要素を取り出すことも可能ですか?現時点では、テーブルが更新されると、他のプロパティはnullになります。 – Seb
どのようにテーブルを構築しているかについてもっと知ることなく、言うことは難しいです。一般的に、ListViewはデータバインドされたリストに適しています。 – Jason
私のテーブルは、バックエンドの独立したプロジェクトで作成されます。アプリケーションからバックエンドプロジェクトにクエリ(おそらくlinqクエリ)を行う可能性はありますか?または、バックエンドプロジェクトへのリクエストを実行し、そこからクエリを実行する方法はありますか? – Seb