0

グリッドパネルのセルをダブルクリックして、別のアクション/ビューを追加のパラメーターで呼び出したい例: グリッドパネルは .../Student にあり、ある学生の詳細を別のページに表示したい例: /Student/Detail /1 彼の名前、ID、またはデータが彼の記録にある場所をダブルクリックします。下手な英語でごめんなさい

4

2 に答える 2

0

私はこれを試しました

@(
  Html.X().GridPanel()
                 .Title("Students")
                 .Width(550)
                 .Height(200)
                 .ForceFit(true)
                 .Store(Html.X().Store().Model(Html.X().Model()
                     .Fields(fields =>
                     {
fields.Add(Html.X().ModelField().Name("StudentID"));
fields.Add(Html.X().ModelField().Name("LastName"));
fields.Add(Html.X().ModelField().Name("FirstMidName"));
fields.Add(Html.X().ModelField().Name("EnrollmentDate"));
                     }
                     )
                 ).DataSource(Model)
     ).ColumnModel(
             Html.X().Column().Text("Student ID").DataIndex("StudentID"),
         Html.X().Column().Text("Last Name").DataIndex("LastName"),
         Html.X().Column().Text("First Name").DataIndex("FirstMidName"),
Html.X().DateColumn().Text("Enrollment").DataIndex("EnrollmentDate")
     ).DirectEvents(de =>
         {
             de.CellDblClick.Url = "Edit"; // also tried
de.CellDblClick.Action = "Edit";
             de.CellDblClick.ExtraParams.Add(1);           //static
later I'll add the StudentID here
         }
        )
)

グリッドパネルには問題なくデータが表示されますが、セルをダブルクリックすると、このlocalhost:10782 / Student / Edit / 1ではなくlocalhost:10782 / Student / Edit?_dc=1359052548829が送信されるように要求されます。

于 2013-01-25T14:06:34.960 に答える
0

I can suggest to manage an URL with a Before handler.

To remove "?dc..." from an URL, please set up DisableCaching="false".

<%@ Page Language="C#" %>

<%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>

<!DOCTYPE html>

<html>
<head runat="server">
    <title>Ext.NET v2 Example</title>

    <script>
        var counter = 1;
    </script>
</head>
<body>
    <ext:ResourceManager runat="server" />
    <ext:Button runat="server" Text="Test">
        <DirectEvents>
            <Click Url="Some URL" Before="o.url = o.rawUrl + counter++;" DisableCaching="false">
                <CustomConfig>
                    <ext:ConfigItem Name="rawUrl" Value="Controller/Action/" Mode="Value" />
                </CustomConfig>
            </Click>
        </DirectEvents>
    </ext:Button>
</body>
</html>
于 2013-01-28T11:01:59.237 に答える