Ejemplo n.º 1
0
        private void Edit(AdapterView.ItemClickEventArgs e)
        {
            DeviceInfo device = data[e.Position];

            AlertDialog.Builder alertDialog = new AlertDialog.Builder(this);
            View view = View.Inflate(this, Resource.Layout.Add, null);

            InitViewControls(view);
            InitViewControlsContents(device);

            alertDialog.SetView(view)
            .SetPositiveButton(GetString(Resource.String.add_device_save), (_s, _e) =>
            {
                if (!TestDataFormat())
                {
                    Toast.MakeText(this, GetString(Resource.String.add_device_error), ToastLength.Long).Show();

                    return;
                }

                device.Name             = DeviceName.Text;
                device.MacAddress       = $"{DeviceMac1.Text}-{DeviceMac2.Text}-{DeviceMac3.Text}-{DeviceMac4.Text}-{DeviceMac5.Text}-{DeviceMac6.Text}";
                device.IpAddress        = $"{DeviceIp1.Text}.{DeviceIp2.Text}.{DeviceIp3.Text}.{DeviceIp4.Text}";
                device.BroadcastAddress = $"{DeviceBroadcast1.Text}.{DeviceBroadcast2.Text}.{DeviceBroadcast3.Text}.{DeviceBroadcast4.Text}";
                device.Port             = Convert.ToByte(DevicePort.Text);
                device.SendingCount     = Convert.ToByte(SendingCount.Text);
                device.Description      = DeviceDesc.Text;
                device.IsShortcut       = Shortcut.Checked;

                sqlite.Update(device);

                data               = sqlite.QueryAll();
                adapter            = new DeviceListAdapter(this, Resource.Layout.device_list_item, data);
                DeviceList.Adapter = adapter;

                SetShortcut();

                Toast.MakeText(this, GetString(Resource.String.add_device_save_success), ToastLength.Long).Show();
            })
            .SetNegativeButton(GetString(Resource.String.add_device_cancel), (_s, _e) =>
            {
                (_s as AlertDialog).Dismiss();
            })
            .SetNeutralButton(Resource.String.add_device_delete, (_s, _e) =>
            {
                sqlite.Delete(device);

                data               = sqlite.QueryAll();
                adapter            = new DeviceListAdapter(this, Resource.Layout.device_list_item, data);
                DeviceList.Adapter = adapter;

                if (data.Count != 0)
                {
                    DeviceList.Visibility = ViewStates.Visible;
                    Tips.Visibility       = ViewStates.Gone;
                }

                Toast.MakeText(this, GetString(Resource.String.add_device_delete_success), ToastLength.Long).Show();
            })
            .Create();
            AlertDialog show = alertDialog.Show();
        }