Mudblazor Datagrid строки, не выбирающие с RowClassFuncC#

Место общения программистов C#
Ответить
Anonymous
 Mudblazor Datagrid строки, не выбирающие с RowClassFunc

Сообщение Anonymous »

Я работаю с подкрепкой и фильтрацией на стороне сервера для DataGrid Mudblazor, и, проверяя строку, все сохраняется должным образом, но я не могу заставить ряды перепроверить в изменении страницы, с Rowclassfunc.









View











@($"{selectedItems.Count} items selected")



< /code>
@code {

private MudDataGrid? _dataGrid;
private ObsRequestModel _requestDto = new();
private HashSet selectedItems { get; set; } = new HashSet();

private async Task Search()
{
if (_dataGrid is not null)
{
await _dataGrid!.ReloadServerData();
}
}

private async Task OnSearchChange(string newValue)
{
_requestDto.Search = newValue;
await Search();
}

private async Task LoadGridData(GridState state)
{
_requestDto.Filters.Clear();
_requestDto.Page = state.Page + 1;
_requestDto.PageSize = state.PageSize;

// Extract sorting information
var sorting = state.SortDefinitions.FirstOrDefault(); // Assuming single column sorting
if (sorting != null)
{
_requestDto.SortColumn = sorting.SortBy;
_requestDto.SortDirection = sorting.Descending == false ? "asc" : "desc"; // Convert Enum to string or appropriate format
}

// Extract filtering information
foreach (var filter in state.FilterDefinitions)
{
if (filter.Value != null) {

var colString = filter.Title.ToString();
var valString = colString == "County" ? await ReferenceService.GetCountyFips(filter.Value.ToString()) : filter.Value.ToString();

_requestDto.Filters.Add(new FilterDefinition
{
Column = colString,
Operator = filter.Operator.ToString(),
Value = valString
});
}
else if (filter.Operator.ToLower() == "is empty" || filter.Operator.ToLower() == "is not empty")
{
_requestDto.Filters.Add(new FilterDefinition
{
Column = filter.Title.ToString(),
Operator = filter.Operator.ToString(),
Value = "0", // Assuming the value is a string, adjust as necessary
});
}

}

ObListDTO Response = await ReferenceService.GetAllObs(_requestDto);
GridData data = new()
{
Items = Response.Items,
TotalItems = Response.ItemTotalCount
};

return data;
}

private async Task OnStartDateChanged(DateTime? newDate)
{
_requestDto.StartDate = newDate;
await DateChange();
}

private async Task OnEndDateChanged(DateTime? newDate)
{
_requestDto.EndDate = newDate;
await DateChange();
}

private async Task DateChange()
{
if (_dataGrid is not null)
{
await _dataGrid!.ReloadServerData();
}
}

public void Dispose()
{

}

private string SelectedRowClassFunc(ObservationListModel element, int rowNumber)
{
return selectedItems.Contains(element) ? "selected" : string.Empty;
}


Подробнее здесь: https://stackoverflow.com/questions/777 ... wclassfunc
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»