Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Настройка ​GridView

724  
Murr патриот19.09.19 11:58
Murr
19.09.19 11:58 

Настройка GridView

Есть нормально работающий код:

ButtonField ORDER_NO = new ButtonField();
ORDER_NO.ItemStyle.HorizontalAlign = HorizontalAlign.Center;
ORDER_NO.ButtonType = ButtonType.Link;
ORDER_NO.Visible = true;
ORDER_NO.CommandName = CommandName;
ORDER_NO.HeaderText = "OrderNo";
ORDER_NO.DataTextField = "PS_ORDER_NO";

BoundField orderPosition = new BoundField();
orderPosition.HeaderText = "Item No:";
orderPosition.DataField = "PS_ORDER_POS";

BoundField quantity = new BoundField();
quantity.HeaderText = "Quantity:";
quantity.DataField = "QTY";

Columns.Add(ORDER_NO);
Columns.Add(orderPosition);
Columns.Add(quantity);


Хочется его слегка упаковать:

Columns.AddRange(new DataControlField[] {
new ButtonField() { HeaderText = "OrderNo", DataTextField = "PS_ORDER_NO",
ItemStyle.HorizontalAlign = HorizontalAlign.Center,
ButtonType = ButtonType.Link,
Visible = true,
CommandName = CommandName,
},
new BoundField() { HeaderText = "Item No:", DataField = "PS_ORDER_POS" },
new BoundField() { HeaderText = "Quantity:", DataField = "QTY" },

});

Ну что AddRange у колллекции отсутствует - неприятно, но не страшно - написал расширение.


А вот что делать с

ItemStyle.HorizontalAlign = HorizontalAlign.Center,

не понимаю - не компилируется - Error CS0747 Invalid initializer member declarator

Могу, конечно, перегрузить БуттонФиелд, но непонятка - остается...

Кто знает как ее победить?


#1 
AlexNek патриот21.09.19 12:08
AlexNek
NEW 21.09.19 12:08 
в ответ Murr 19.09.19 11:58
А вот что делать с

для начала описать где используется. Хорошо бы примерчик для студии.

Могу предположить что у тебя ASP/NET Web forms. Хотя что там я уже подзабыл хорошо. MVC понравился больше.

#2 
Murr патриот23.09.19 11:39
Murr
NEW 23.09.19 11:39 
в ответ AlexNek 21.09.19 12:08

Могу предположить что

-----

Оно самое.

Но вопрос не в том где, а в том почему не компилится.


Хорошо бы примерчик для студии.

-----

Ну так код в наличии -

new ButtonField() { HeaderText = "OrderNo", DataTextField = "PS_ORDER_NO",

ItemStyle.HorizontalAlign = HorizontalAlign.Center, // compilation error

ButtonType = ButtonType.Link,

Visible = true,

CommandName = CommandName,

}

Хоть в странице, хоть, как у меня, отдельно...


MVC понравился больше.

-----

Хочу. Никак руки не доходят... да и местное гамно хотя бы в объектную форму перевести... рядышком про репотик запостил... хрен знает как копать...

#3 
AlexNek патриот23.09.19 21:27
AlexNek
NEW 23.09.19 21:27 
в ответ Murr 23.09.19 11:39
Ну так код в наличии

Ты сам то пробовал его запускать? Почти уверен, что работает.

Нужен тот который не работает

#4 
Murr патриот23.09.19 22:59
Murr
NEW 23.09.19 22:59 
в ответ AlexNek 23.09.19 21:27

Почти уверен, что...

----

...ошибку выдаваемую компилятором Я тоже привел.

А так - да, должно работать...


Не единственная, кстати, проблема - днями не компилялся код примеров с сайта мелкомягких...

#5 
AlexNek патриот23.09.19 23:10
AlexNek
NEW 23.09.19 23:10 
в ответ Murr 23.09.19 22:59

Для начала нужен пример который не будет работать на моем компе смущ

А Студия и так дофига ошибок выдает. Я уже не разбираюсь до перегрузки.

Два раза перегрузил с полной перекомпиляцией, если ошибка осталась, то уже моя.

#6 
Murr патриот23.09.19 23:13
Murr
NEW 23.09.19 23:13 
в ответ AlexNek 23.09.19 23:10

А у тебя приведенный код компилируется?

Если - да - мне надо полностью перставлять систему... это долго и муторно...

#7 
AlexNek патриот23.09.19 23:28
AlexNek
NEW 23.09.19 23:28 
в ответ Murr 23.09.19 23:13
А у тебя приведенный код компилируется?

Ну так грю, давай полный проект я попробую. Чтобы распаковать и стартануть

А просто перестановка студии не помогает?

#8 
AlexNek патриот23.09.19 23:36
AlexNek
NEW 23.09.19 23:36 
в ответ Murr 23.09.19 23:13

ну вот куда твой код вставлять?

<%@ Page Title="Contact" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Contact.aspx.cs" Inherits="MurrWebApplication01.Contact" %>

<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
    <h2><%: Title %>.</h2>
    <h3>Your contact page.</h3>
    <address>
        One Microsoft Way

        Redmond, WA 98052-6399

        <abbr title="Phone">P:</abbr>
        425.555.0100
    </address>

    <address>
        <strong>Support:</strong>   <a href="mailto:Support@example.com">Support@example.com</a>

        <strong>Marketing:</strong> <a href="mailto:Marketing@example.com">Marketing@example.com</a>
    </address>
</asp:Content>
#9 
Murr патриот24.09.19 00:05
Murr
NEW 24.09.19 00:05 
в ответ AlexNek 23.09.19 23:28

Чтобы распаковать и стартануть

------

Нее, не сегодня.

У меня дома живого железа не осталось... :(

#10 
Murr патриот24.09.19 00:07
Murr
NEW 24.09.19 00:07 
в ответ AlexNek 23.09.19 23:28

А просто перестановка студии не помогает?

------

Неа... Даже репайр и сброс в начальные установки проблему не решает...

#11 
Murr патриот24.09.19 00:10
Murr
NEW 24.09.19 00:10 
в ответ AlexNek 23.09.19 23:36, Последний раз изменено 24.09.19 00:11 (Murr)

ну вот куда твой код вставлять?

------

В любой метод в файле contact.aspx.cs

Хотя... можно и в странцу между <# и #>… или <% и %>… не помню уже - всегда полностью разношу разметку и код...

#12 
AlexNek патриот24.09.19 21:26
AlexNek
NEW 24.09.19 21:26 
в ответ Murr 24.09.19 00:10

А кто тебе сказал что ButtonField имеет ItemStyle?

#13 
Murr патриот25.09.19 12:38
Murr
NEW 25.09.19 12:38 
в ответ AlexNek 24.09.19 21:26

Первые три строки в первом посте.

Если бы тот код не компилялся - не было бы вопроса.

А так - ругаетсйa именно при попытке указанной инициализации.

#14 
AlexNek патриот29.09.19 17:49
AlexNek
NEW 29.09.19 17:49 
в ответ Murr 25.09.19 12:38, Последний раз изменено 02.10.19 18:13 (AlexNek)

Ну если два кода иметь и решарпер то вопросов не будет улыб

 Columns.AddRange(new DataControlField[] {
                                                        new ButtonField
                                                            {
                                                                DataTextField = "PS_ORDER_NO",
                                                                HeaderText = "OrderNo",
                                                                ItemStyle = { HorizontalAlign = HorizontalAlign.Center },
                                                                ButtonType = ButtonType.Link,
                                                                Visible = true,
                                                                CommandName = CommandName,
                                                                
                                                            },
                                                        new BoundField() { HeaderText = "Item No:", DataField = "PS_ORDER_POS" },
                                                        new BoundField() { HeaderText = "Quantity:", DataField = "QTY" },
                                                    });
#15 
Murr патриот02.10.19 10:26
Murr
NEW 02.10.19 10:26 
в ответ AlexNek 29.09.19 17:49

Cool.

#16