Разрешить изменение размера столбцов gridview пользователем - PullRequest
0 голосов
/ 26 февраля 2019

Я хотел бы разрешить пользователю изменять размеры столбцов в моем представлении данных, как в этом GIF-файле.https://docs.telerik.com/devtools/winforms/controls/gridview/columns/images/gridview-columns-rezise-columns001.gif

Я пытался добавить AllowUserToResizeColumns = "True", но по какой-то причине это не работает для меня, вот мой код заголовка datagridview.

<asp:GridView ID="editingGrid" runat="server" AutoGenerateColumns="false" ShowFooter="false" DataKeyNames="compras_id"
                ShowHeaderWhenEmpty="true" AllowPaging="True" OnPageIndexChanging="gridView_PageIndexChanging" OnRowDataBound = "OnRowDataBound" OnSelectedIndexChanged = "OnSelectedIndexChanged" 
                 CellPadding="3" AllowUserToResizeColumns="True" PageSize="5" AllowSorting="true" onsorting="grdPurchases_Sorting"  GridLines="None" CssClass="mGrid" PagerStyle-CssClass="pgr" AlternatingRowStyle-CssClass="alt">
                <PagerSettings  Mode="Numeric" />       

Что я могу сделать, чтобыполучить размеры столбцов для изменения размера пользователем.Спасибо

1 Ответ

0 голосов
/ 26 февраля 2019

Наконец я понял, что мне нужно использовать javascript, чтобы он работал, как сказал мне Алекс, и вот мое решение

<script src="../scripts/jquery.js" type="text/javascript"></script>
<script src="../scripts/colResizable-1.3.min.js" type="text/javascript"></script>
<script src="../scripts/jquery.cookie.js" type="text/javascript"></script>
 <script type="text/javascript">
     $(document).ready(function () {
         if ($.cookie('colWidth') != null) {
             var columns = $.cookie('colWidth').split(',');
             var i = 0;
             $('.mGrid th').each(function () {
                 $(this).width(columns[i++]);
             });
         }

         $(".mGrid").colResizable({
             liveDrag: true,
             gripInnerHtml: "<div class='grip'></div>",
             draggingClass: "dragging",
             onResize: onSampleResized
         });

     });

     var onSampleResized = function (e) {
         var columns = $(e.currentTarget).find("th");
         var msg = "";
         columns.each(function () { msg += $(this).width() + ","; })
         $.cookie("colWidth", msg);
     }; 
</script>  

  <asp:GridView ID="editingGrid" runat="server" AutoGenerateColumns="false" ShowFooter="false" DataKeyNames="compras_id"
        ShowHeaderWhenEmpty="true" AllowPaging="True" OnPageIndexChanging="gridView_PageIndexChanging" OnRowDataBound = "OnRowDataBound" OnSelectedIndexChanged = "OnSelectedIndexChanged" 
         CellPadding="3" AllowUserToResizeColumns="True" PageSize="5" AllowSorting="true" onsorting="grdPurchases_Sorting"  GridLines="None" CssClass="mGrid" PagerStyle-CssClass="pgr" AlternatingRowStyle-CssClass="alt">
        <PagerSettings  Mode="Numeric" />    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...