Как реализовать встроенное редактирование для этой сетки, используя devexpress Blazor - PullRequest
1 голос
/ 24 октября 2019

Я создал сетку, используя devexpress Blazor. Я хочу реализовать встроенное редактирование для этой сетки, хотя devexpress не реализовал никаких функций встроенного редактирования.

Вот код ht, который я использовал для этой сетки.

@if (dischargeBoards == null)
{
    <p><em>Loading...</em></p>
}
else
{

 <div class="card demo-card-wide border-bottom-0">
        <div class="card-header border-bottom-0">
            ClientVisitGuid: <b>@(selectedRow == null ? (object)"(none)" : selectedRow.ClientVisitGuid)</b>&nbsp;
            CurrentLocationGUID: <b>@(selectedRow == null ? (object)"(none)" : selectedRow.CurrentLocationGUID)</b>&nbsp;
            PatientName: <b>@(selectedRow == null ? "(none)" : selectedRow.PatientName)</b>
        </div>
     </div>
<DxDataGrid Data="@dischargeBoards"
            ShowFilterRow="false"
            @bind-SingleSelectedDataRow="@SelectedRow"
                    
                    ShowPager="true"
                    ShowGroupPanel="true"
                    PageSize="19">


    <DxDataGridColumn Field="@nameof(DischargeBoardVisit.LocationGroup)" Caption="L/C Group" AllowGroup="true"></DxDataGridColumn>
    <DxDataGridColumn Field="@nameof(DischargeBoardVisit.Location)" Width="100px"></DxDataGridColumn>
    <DxDataGridColumn Field="@nameof(DischargeBoardVisit.PatientName)" SortIndex="0" Width="240px"></DxDataGridColumn>
    <DxDataGridColumn Field="@nameof(DischargeBoardVisit.Service)" Width="240px"></DxDataGridColumn>
    <DxDataGridDateEditColumn Field="@nameof(DischargeBoardVisit.DischargeDateExp)"
                                               DisplayFormatString="MM/dd/yyyy"
                                               EditFormatString="d"></DxDataGridDateEditColumn>
    <DxDataGridColumn Field="@nameof(DischargeBoardVisit.DischargeTimeExp)" Caption="Time Exp"></DxDataGridColumn>
    <DxDataGridColumn Field="@nameof(DischargeBoardVisit.Family)" Caption="Family">
        <DisplayTemplate>
            @{

                var checkboxFamily = (context as DischargeBoardVisit).Family;

                if (checkboxFamily)
                    {

                    <button class="btn btn-success btn-circle btn-circle-sm m-1">@*<i class="fa fa-check"></i>*@</button>
                    }
                    else
                    {

                    <button class="btn btn-danger btn-circle btn-circle-sm m-1"></button>
                    }
            }
        </DisplayTemplate>
    </DxDataGridColumn>


            <DxDataGridColumn Field="@nameof(DischargeBoardVisit.Rehab)">
        <DisplayTemplate>
            @{

                    var checkboxRehab = (context as DischargeBoardVisit).Rehab;
                //<input type="checkbox" checked="@checkboxRehab" disabled readonly />
                if (checkboxRehab)
                    {

                    <button class="btn btn-success btn-circle btn-circle-sm m-1">@*<i class="fa fa-check"></i>*@</button>
                    }
                    else
                    {

                    <button class="btn btn-danger btn-circle btn-circle-sm m-1"></button>
                    }

            }
        </DisplayTemplate>
    </DxDataGridColumn>

    <DxDataGridColumn Field="@nameof(DischargeBoardVisit.Comment)" Width="240px"></DxDataGridColumn>

</DxDataGrid>
}

@code {
DischargeBoardVisit[] dischargeBoards;
// readonly string _id = Guid.NewGuid().ToString();

[Parameter]
public string DisplayFormatString { get; set; }

protected override async Task OnInitializedAsync()
{

    dischargeBoards = await DischageBoard.GetDischargeAsync();
    SelectedRow = dischargeBoards.FirstOrDefault();
}

public DischargeBoardVisit context { get; set; }




DischargeBoardVisit selectedRow;

public DischargeBoardVisit SelectedRow
{
    get
    {
        return selectedRow;
    }
    set
    {
        selectedRow = value;
        InvokeAsync(StateHasChanged);

    }
}
}

Я имелпробовал по-разному. Но я не мог найти правильного решения для этого. заранее спасибо. Все признательность будет высоко ценится.

1 Ответ

0 голосов
/ 25 октября 2019

В настоящее время нет простого способа сделать это. Вот почему я предлагаю вам подождать, пока эта функция не будет реализована, так как она находится в бэклоге команды DevExpress Blazor. Пожалуйста, следите за обновлениями в блогах .

...