Я использую Xamarin Android. В текущем действии у меня есть форма редактирования и при событии нажатия кнопки у меня есть запрос на обновление в текущем действии.
private void OnclickSaveDATAButton(object sender, EventArgs e)
{
var CNICCARDNUMBER = Intent.Extras.GetString("NIC");
var conn = Connection();
conn.BeginTransaction();
var hf = conn.Table<mof>();
var search = hf.Where(x => x.CNICNO == CNICCARDNUMBER).ToList().FirstOrDefault(); //Linq Query
var Hofid = Convert.ToString(search.HOFID);
var data = conn.Query<hof>("UPDATE hof SET HOFNAME = ? WHERE HOFID = ?", Name.Text, Hofid);
conn.Commit();
if (data!= null)
{
Toast.MakeText(this,"Updated Successfully", ToastLength.Short).Show();
}
else
{
Toast.MakeText(this, "Update failed", ToastLength.Short).Show();
}
}
Когда я возвращаюсь к предыдущему действию по событию кнопки назад
public override void OnBackPressed()
{
Intent intent = new Intent(this, typeof(SearchingActivity));
intent.SetFlags(ActivityFlags.ClearTop);
StartActivity(intent);
}
В предыдущем упражнении у меня был запрос выбора на событии выбора вкладки. когда я выбираю вкладку, я хочу обновить ListView и отобразить обновленные данные вместо старых.
else if (CurrentTab.Position == 1)
{
Gridd = (ListView)FindViewById(Resource.Id.gridview);
Gridd.Visibility = ViewStates.Visible;
var CNICCARDNUMBER = Intent.Extras.GetString("cnic");
var conn = Connection();
var Hofid = 2;
data1 = new List<string>();
var data = conn.Query<combine>("SELECT hof WHERE hof.HOFID=?", Hofid);
foreach (var values in data)
{
data1.Add("CNIC:" + Convert.ToString(values.CNICNO));
data1.Add("Health card Number:" + Convert.ToString(values.CARDNO));
}
Gridd = (Listview)FindViewById(Resource.Id.gridview);
ArrayAdapter<string> adapter = new ArrayAdapter<string>(this, Android.Resource.Layout.SimpleListItem1, data1);
if (data1.Count() > 0)
{
Gridd.SetAdapter(adapter);
// Gridd.Adapter = adapter;
Gridd.ItemClick += Gridd_ItemClick;
}
else
{
Toast.MakeText(this, "No Data returned.", ToastLength.Short).Show();
}
}
Q: Как этого добиться?