Преобразовать целочисленное значение из базы данных в максимальную длину текстового поля - PullRequest
0 голосов
/ 06 июля 2018

У меня есть столбец в базе данных, где хранятся целочисленные значения (4, 6, 8 ...). Эти целочисленные значения должны быть максимально допустимой длины TextBox, это Таблица .

Это код из c #, в котором я сейчас передал имена признаков и целые числа (максимальное количество мест для текстовых полей из базы данных динамически).

protected void ddlBC_SelectedIndexChanged(object sender, EventArgs e)
{
    //ddlKar.Items.Clear(); 
    LogicTableAdapters.getLvLOneIntegerTableAdapter getKar = new LogicTableAdapters.getLvLOneIntegerTableAdapter();

    DataTable dtKar = getKar.getLvLOneInteger(ddlBC.SelectedValue);

    DataTable dt = new DataTable();
    dt.Columns.AddRange(new DataColumn[2]{ new DataColumn("CharacteristicName", typeof(string)) new DataColumn("MaxNoPlaces", typeof(string))});

    foreach (DataRow dr in dtKar.Rows)
    {
        dt.Rows.Add(dr["CharacteristicName"].ToString(), dr["MaxNoPlaces"].ToString());
    }

    gvKarakteristike.DataSource = dt;
    gvKarakteristike.DataBind();
}

Это часть жереха:

 <asp:GridView ID="gvKarakteristike" runat="server" CellPadding="4" ForeColor="#333333" GridLines="None" AutoGenerateColumns="False" DataKeyNames="LevelID" OnRowDataBound="gvKarakteristike_RowDataBound">

            <AlternatingRowStyle BackColor="White" />
            <Columns>

                <asp:TemplateField HeaderText="Characteristics">
                    <ItemTemplate>
                        <asp:Label ID="Characteristics" runat="server" Width="150px" Height="30px" Font-Names="Georgia" margin-Left="100px" Text='<%# Bind("CharacteristicName") %>'></asp:Label>


                    </ItemTemplate>
                </asp:TemplateField>

                <asp:TemplateField HeaderText="Description">
                    <ItemTemplate>

                         <asp:DropDownList ID="ddlOpis" AppendDataBoundItems="true"  Width="142px" Height="35px" Font-Names="Georgia" margin-Left="100px" runat="server">
                             <asp:ListItem Text="" Value="" />
                         </asp:DropDownList>

                        <asp:TextBox ID="txtBoxOpis" runat="server" Width="130px" Height="28px" Font-Names="Georgia" margin-Left="100px" Text='<%# Bind("MaxNoPlaces") %>'></asp:TextBox>


                    </ItemTemplate>
                </asp:TemplateField>
            </Columns>

            <EditRowStyle BackColor="#2461BF" />
            <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
            <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
            <RowStyle BackColor="#EFF3FB" />
            <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
            <SortedAscendingCellStyle BackColor="#F5F7FB" />
            <SortedAscendingHeaderStyle BackColor="#6D95E1" />
            <SortedDescendingCellStyle BackColor="#E9EBEF" />
            <SortedDescendingHeaderStyle BackColor="#4870BE" />

        </asp:GridView>

Мне нужно это динамически напрямую из базы данных, потому что со временем база данных будет расти, равно как и число текстовых полей.

Могу ли я сделать это с помощью jquery или asp? Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 06 июля 2018

Можете ли вы попробовать приведенный ниже код и посмотреть, работает ли он. Я изменил атрибут Text на MaxLength.

 <asp:TextBox ID="txtBoxOpis" runat="server" Width="130px" Height="28px" Font-Names="Georgia" margin-Left="100px" MaxLength='<%= Bind("MaxNoPlaces") %>'></asp:TextBox>
0 голосов
/ 06 июля 2018

Сохранение мультилинии может затруднить настройку максимальной длины текстового поля. Вы можете установить MaxLength динамически с помощью JavaScript. Проверьте это сообщение: Контроль максимальной длины многострочного текстового поля

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...