Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Пользовательский контрол [Глупые вопросы] 
:(
    Опции темы
Miller_time
Дата 19.4.2010, 12:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 641
Регистрация: 8.9.2006
Где: Нижний Новгород

Репутация: 1
Всего: 1



Добрый день,  возникла необходимость создания пользовательского контрола.

Есть код который добовляет два контрола

Код

        CheckBox cb = new CheckBox();
        TextBox tb = new TextBox();
        Controls.Add(cb);
        Controls.Add(tb);


А есть возможность заключить данные контролы например в Таблицу HTML ? А потом предствить данный массив виде данных? 
Сразу оговорюсь я не когда не работал с пользовательскими контролами проста небыло необходимости и код описанный выше может быть полным бредом. 


--------------------
Мы делаем игрыЗДЕСЬ
PM MAIL WWW ICQ   Вверх
A5uKa
Дата 19.4.2010, 14:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 3
Всего: 16



Динамические контролы !  smile 

Уважаю...

Вот информация к размышлению  smile 

Код


  <script type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script>
  <script type="text/javascript">
      function CallPageMethod(methodName, onSuccess, onFail) 
      {
            var args = '';
            var l = arguments.length;
            if (l > 3)
            {
                for (var i = 3; i < l - 1; i += 2) 
                {
                    if (args.length != 0) args += ',';
                    args += '"' + arguments[i] + '":"' + arguments[i + 1] + '"';
                }
            }
            var loc = window.location.href;
            loc = (loc.substr(loc.length - 1, 1) == "/") ? loc + "Report.aspx" : loc;
            $.ajax
            ({
                type: "POST",
                url: loc + "/" + methodName,
                data: "{" + args + "}",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: onSuccess,
                fail: onFail
            });
        }

        function select() {
        
            var values = new Array();
            $("input.DynamicTB").each
                (
                function(i) {
                    values[i] = $(this).val();
                }
                );

                var valuesG = new Array();
                $("input.DynamicTBG").each
                (
                function(i) {
                    valuesG[i] = $(this).val();
                }
                );
            
            CallPageMethod("SelectBook", success, fail, "values", values, "valuesG", valuesG);
        }
        
  function success(response)
  {
    alert(response.d);
  }

  function fail(response)
  {
    alert("Ошибка.");
  }
  </script>


Код

<a href="javascript:void(0);" onclick="select();" style="font-size:large; border-width:2px;  ...


Код

      unless (GridView1.Rows.Count==0)
      {
        mutable ts=GridView1.Rows[0].Cells[0].Text.Split(':'); 
        mutable first=true;
        mutable cntrl=ts[1];
        //HACK: Editable trick
        //TODO: CrapCode OOP to FP
        foreach(index with row = GridView1.Rows[index] in [0..GridView1.Rows.Count-1])
        {
          unless (first) 
            ts=row.Cells[0].Text.Split(':');
          unless (row.Cells[0].Text=="&nbsp;")
          {
          if (ts[1]==cntrl && !first)
          {
            row.Cells[0].Text=ts[0];
          }
          else
          {
          row.Cells[0].Text="";
          row.Cells[0].Controls.Add
                    ({
                       def TB = TextBox(); TB.EnableViewState = false;
                       unless(row.Cells[0].Text == "&nbsp;") // ""
                        TB.Text = ts[0];
                       TB.Visible=true;
                       TB.ID="id"+TB.ClientID;
                       TB.ReadOnly=false;
                       TB.Width = 50;
                       TB.CssClass="DynamicTB";
                       TB
                    });
          //TODO : Invisible property 
          row.Cells[0].Controls.Add
                    ({
                       def TBQ = TextBox(); TBQ.EnableViewState = false;
                       unless(row.Cells[0].Text == "&nbsp;")
                        TBQ.Text = ts[1];
                       TBQ.Width = 50;
                       TBQ.Visible=true;
                       TBQ.ReadOnly=true;
                       TBQ.Enabled=false;
                       TBQ.CssClass="DynamicTBG";
                       TBQ.BorderWidth=0;
                       TBQ.Style["text-align"] = "center";
                       TBQ.ForeColor=System.Drawing.Color.White;
                       TBQ
                    });
        }
        when(first) first=false;
            cntrl=ts[1];
        }
        }
      }


Код

    [Web.Services.WebMethod]
    public static SelectBook(values : string, valuesG : string) : string
    {
        def vals = values.Split(',');
        def valsG = valuesG.Split(',');
        if (vals.Length==valsG.Length)
            SQLModule.UpdateAdvCode(vals, valsG)
        else
            "Ошибка чтение диспетчерских кодов"
    }


Код

        public static UpdateAdvCode(vals : array[string], valsG : array[string]) : string
        {   
            conn.Open();
            def UpdateAdvCode (i) : bool
            {
                if(i == vals.Length) { conn.Close(); true }
                else
                if (vals[i]=="" || vals[i]=="&nbsp;")
                    false   
                else
                {
                    def cmd = SqlCommand("UPDATE CfgGIS SET AdvCode='"+vals[i]+"' WHERE ID_GIS="+valsG[i], conn);
                    try
                    {
                        _=cmd.ExecuteNonQuery();
                        UpdateAdvCode(i+1)
                    }
                    catch{| _ => conn.Close(); false} 
                }
            }
            if(UpdateAdvCode(0)) "Коды обновлены"
                else             "Ошибка при обновлении диспетчерских кодов"
        }

PM   Вверх
Miller_time
Дата 22.4.2010, 16:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 641
Регистрация: 8.9.2006
Где: Нижний Новгород

Репутация: 1
Всего: 1



не подскажите какие нибудь книжки на русском языке по программированию контролов ASP.NET ?


--------------------
Мы делаем игрыЗДЕСЬ
PM MAIL WWW ICQ   Вверх
A5uKa
Дата 23.4.2010, 07:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 3
Всего: 16



Не знаю... Программирование контролов звучит непонятно... В чём суть задачи ?
Уж лучше удариться тогда в изучение MVC, там как раз логика построения контрола на клиенте и.т.д.
Я вот тоже хочу  smile 
PM   Вверх
Miller_time
Дата 23.4.2010, 08:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 641
Регистрация: 8.9.2006
Где: Нижний Новгород

Репутация: 1
Всего: 1



Может быть Silverlight ? 
A5uKa, Думаешь технология перспективная. Если посматреть на разлиыные сайты то она еще пока не больнато где используеться :(


--------------------
Мы делаем игрыЗДЕСЬ
PM MAIL WWW ICQ   Вверх
A5uKa
Дата 23.4.2010, 08:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 3
Всего: 16



да - очень даже перспективная.

Silverlight + MVC на 2010 очень неплохо смотрятся.
я не так фанатею конечно от сильверлайт... Он даже в студии 2010 остался каким-то ... странным smile
Но он красивый и шустро двигается.

и ещё мне очень нравится вот эта задумка
http://code.google.com/p/nemerleonrails/

Цитата

Nemerle on Rails - .Net Web framework в стиле Ruby on Rails со статической типизацией и контролем компилятора 

PM   Вверх
Miller_time
Дата 23.4.2010, 09:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 641
Регистрация: 8.9.2006
Где: Нижний Новгород

Репутация: 1
Всего: 1



А SilverLight досихпор не работает по Linux (Клиенским)?


--------------------
Мы делаем игрыЗДЕСЬ
PM MAIL WWW ICQ   Вверх
A5uKa
Дата 23.4.2010, 10:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 3
Всего: 16



Клиентский вроде как работал и работает.
Для разработки даже есть Moonlight от Mono
PM   Вверх
Miller_time
Дата 23.4.2010, 11:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 641
Регистрация: 8.9.2006
Где: Нижний Новгород

Репутация: 1
Всего: 1



Подскажите как написать контрол Вроде DropList что бы в нем отображались изображения слева.


--------------------
Мы делаем игрыЗДЕСЬ
PM MAIL WWW ICQ   Вверх
A5uKa
Дата 23.4.2010, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 3
Всего: 16



Код

<ELB:EasyListBox id="customDemo" runat="server"
  Height="100px" Width="220px"
  ButtonHeight="20" ButtonWidth="18" ListBorderStyle="solid"
  ArrowColor="#f0d090" ButtonColor="#a06030" Background="skyblue"
  RollTextColor="black" RollBGColor="#ddddaa"
  PromptText="Pick a country" >
  <ListItem value="brazil"><img
    src='images/flags/brazil.gif'> <b>B</b>razil</ListItem>
  <ListItem value="canada"><img
    src='images/flags/canada.gif'> <b>C</b>anada</ListItem>
  <ListItem value="china"><img
    src='images/flags/china.gif'> <b>C</b>hina</ListItem>
  <ListItem value="italy"><img
    src='images/flags/italy.gif'> <b>I</b>taly</ListItem>
  <ListItem value="japan"><img
    src='images/flags/japan.gif'> <b>J</b>apan</ListItem>
  <ListItem value="norway"><img
    src='images/flags/norway.gif'> <b>N</b>orway</ListItem>
  <ListItem value="portugal"><img
    src='images/flags/portugal.gif'> <b>P</b>ortugal</ListItem>
  <ListItem value="russia"><img
    src='images/flags/russia.gif'> <b>R</b>ussia</ListItem>
  <ListItem value="spain"><img
    src='images/flags/spain.gif'> <b>S</b>pain</ListItem>
  <ListItem value="switzerland"><img
    src='images/flags/switzerland.gif'> <b>S</b>witzerland</ListItem>
  <ListItem value="turkey"><img
    src='images/flags/turkey.gif'> <b>T</b>urkey</ListItem>
  <ListItem value="uk"><img
    src='images/flags/uk.gif'> <b>U</b>nited <b>K</b>ingdom</ListItem>
  <ListItem value="usa"><img
    src='images/flags/usa.gif'> <b>U</b>nited <b>S</b>tates of <b>A</b>merica</ListItem>
</ELB:EasyListBox> 


http://easylistbox.com/demoCustomized.aspx
PM   Вверх
Miller_time
Дата 23.4.2010, 12:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 641
Регистрация: 8.9.2006
Где: Нижний Новгород

Репутация: 1
Всего: 1



Спасибо выручил

Добавлено через 1 минуту и 22 секунды
А блин он платный :(, а может можешь расказать в кратце в какую сторону капать для написания такова рода контрола ?


--------------------
Мы делаем игрыЗДЕСЬ
PM MAIL WWW ICQ   Вверх
A5uKa
Дата 23.4.2010, 12:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 3
Всего: 16



PM   Вверх
Miller_time
Дата 29.4.2010, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 641
Регистрация: 8.9.2006
Где: Нижний Новгород

Репутация: 1
Всего: 1



Подскажите как пользовательский контрол запихать в (в библиотеку)DLL ?


--------------------
Мы делаем игрыЗДЕСЬ
PM MAIL WWW ICQ   Вверх
A5uKa
Дата 30.4.2010, 07:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


TЋ♥s F1rȜ iƧ BurȠiƞg
***


Профиль
Группа: Awaiting Authorisation
Сообщений: 1928
Регистрация: 30.8.2008

Репутация: 3
Всего: 16



Не знаю. А зачем ?
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Любитель
Mymik
mr.DUDA

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка под ASP.NET | Следующая тема »


 




[ Время генерации скрипта: 0.0752 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.