private void gv_Detail_tb_PODetail_DoubleClick(object sender, EventArgs e) { DataRow row = GetSelectDataRow(); if (row != null) { OnRowSelected?.Invoke(row); } }
/// <summary> /// 点击指定的行。 /// <para> /// 若指定的索引是 -1,则: /// <list type="bullet"> /// <item> /// 若设置了 <see cref="RowSelectedColor"/> 参数,将取消所有的选中背景。 /// </item> /// <item> /// <see cref="BootDataGridRowSelectedEventArgs.Item"/> 的值是 null。 /// </item> /// </list> /// </para> /// </summary> /// <param name="index">点击行的索引。</param> /// <exception cref="InvalidOperationException">索引超出数组范围。</exception> public async Task ClickRow(int index) { if (index > Data.Count) { throw new ArgumentOutOfRangeException($"指定的索引({index})超出数组范围({Data.Count})"); } await OnRowSelected.InvokeAsync(new BootDataGridRowSelectedEventArgs(index, index < 0 ? null : Data[index])); if (RowSelectedColor.HasValue) { var bgColorCss = ComponentUtil.GetColorCssClass(RowSelectedColor.Value, "bg-"); var textColorCss = ComponentUtil.GetReverseColorCssClass(RowSelectedColor.Value, "text-"); //先清空相应的 css if (index < 0) { for (int i = 0; i < RowCssList.Count; i++) { RemoveRowCss(i, bgColorCss); RemoveRowCss(i, textColorCss); } return; } if (!RowMultipleSelect) { //如果不能多选行,则点击任意一行则会取消其他行的高亮。 for (int i = 0; i < RowCssList.Count; i++) { RemoveRowCss(i, bgColorCss); RemoveRowCss(i, textColorCss); } } if (index > -1) { if (HasRowCss(index, bgColorCss)) { RemoveRowCss(index, bgColorCss); RemoveRowCss(index, textColorCss); } else { AddRowCss(index, bgColorCss); AddRowCss(index, textColorCss); } } } }
public override void RowSelected(UITableView tableView, NSIndexPath indexPath) { OnRowSelected?.Invoke(indexPath, null); }
public TableViewDelegate(OnRowSelected onRowSelected, OnGetHeightForRow onGetHeightForRow) { this.onRowSelected = onRowSelected; this.onGetHeightForRow = onGetHeightForRow; }
private void onGridRowSelected(string dest, float price, uint size) { OnRowSelected?.Invoke(dest, price, size); }