1

以下のように、Gridview に Ajax 評価コントロールを追加しました。

  <asp:BoundField DataField="Wrms_QueryId" HeaderText="Warms_QueryId" ReadOnly="True" SortExpression="Wrms_QueryId" />
            <asp:TemplateField HeaderText="Favourites">
                <ItemTemplate>
                    <asp:Rating ID="Rating1" runat="server" AutoPostBack="true"  CurrentRating='<%# Bind("num") %>' MaxRating="3" RatingAlign="Horizontal"
                        RatingDirection="LeftToRightTopToBottom" StarCssClass="ratingStar" WaitingStarCssClass="savedRatingStar"
                        FilledStarCssClass="filledRatingStar" EmptyStarCssClass="emptyRatingStar" Tag='<%# Bind("Wrms_QueryId")%>' OnChanged="Rating1_Changed">
                    </asp:Rating>
                </ItemTemplate>
            </asp:TemplateField>

そして.csで

 protected void Rating1_Changed(object sender, EventArgs e)
{
    Rating ra= (Rating)sender; 
    GridViewRow gr=(GridViewRow) ra.Parent.Parent;          

    // table update required?

    Rating r = sender as Rating;
     int id = Convert.ToInt32(r.Tag);
     int lf = Convert.ToInt32(r.CurrentRating);
     string strSQL2 = "UPDATE [dbo].[wrms_config_m] set QueryId = " + lf + " where  Wrms_QueryId = " + id;
     ExecuteSQLUpdate(strSQL2);


}    

評価列に並べ替えを追加する方法がわかりません。通常は SortExpression="####" を追加するだけですが、これは評価列ではサポートされていないようです。

多くのフォーラムを調べましたが、答えが見つかりません。どんな助けでもありがたく受け取ってください。

ありがとう

4

1 に答える 1

1

わかりました、これを自分で解決しました。ソートを間違った行に追加していました。オンにする必要がありました

<asp:TemplateField HeaderText="Favourites" SortExpression="num">
于 2012-11-29T14:50:58.900 に答える