Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Программирование в среде .NET (ASP.NET,ADO.NET) на C#/VB.NET

Автор: dneprcomp
Дата сообщения: 19.02.2010 05:55
Postscriptum
Попробуй вместо эвента CheckedChanged написать на Click
Автор: Postscriptum
Дата сообщения: 19.02.2010 06:28
dneprcomp
На Click ругается - CheckBox1_Click - определение отсутствует

Добавлено:
BlackVetal
Точно, спасибо. А что это за параметр?
Автор: BlackVetal
Дата сообщения: 19.02.2010 07:48
Postscriptum

Цитата:
А что это за параметр?

точно не помню - но что-то в стиле обработки на стороне клиента ... или я путаю ... MSDN нет под рукой
Автор: niichavo
Дата сообщения: 19.02.2010 09:26
Postscriptum

Цитата:
А что это за параметр?

Автоматически посылает страницу серверу при изменении состояния веб-контрола на стороне клиента.
ЗЫ. Некошерно сие использовать, особенно если страничка загружена элементами. Используй ajax, хотя бы в виде update panel
Автор: Postscriptum
Дата сообщения: 19.02.2010 16:40
niichavo

Цитата:
Автоматически посылает страницу серверу при изменении состояния веб-контрола на стороне клиента.
ЗЫ. Некошерно сие использовать, особенно если страничка загружена элементами. Используй ajax, хотя бы в виде update panel

Страницу делаю для Microsoft Office SharePoint Server 2007 в SharePoint Designere. Там AJAX компонентов нету.
Автор: vov4ka
Дата сообщения: 23.02.2010 11:43
Здравствуйте все! С праздником,мужики! Пока все постсоветское пространство еще вовсю не отмечает праздник,хотелось бы попросить помощи в решении задачи у знающих людей. Сам я в написании скриптов,тем полее в .Net полный дуб,но необходимо реализовать слудующую задачу. На серваке стоит вебморда,работающая на Asp.Net 2.0., в левой части которой есть несколько ссылок,в которых потом есть еще вложенные.Кто-то может сбацать прогу или скрипт,который ходит рекурсивно по всем ссылкам, и ищет кнопку,к примеру,"завершить задание".Когда находит-нажимает,выходит в замое начало дерева и ищет в следующем разделе и т.д.?

Кто-то может поделиться знаниями,наработками,опытом-буду по-человечески очень благодарен этим людям! Еще раз ВСЕХ МУЖИКОВ с праздником!!!!
Автор: mrlika
Дата сообщения: 23.02.2010 14:19
vov4ka

Если тебе надо автоматически лазить по сайту (всеровно на чем он написан) и кликать, то здесь совсем не .NET нужен. Можно использовать например iMacros for Firefox который позволяет автоматизировать такие задачи - можно записать последовательность действий и проиграть их опять сколько хочешь раз. У него много возможностей.

https://addons.mozilla.org/en-US/firefox/addon/3863
Автор: rain_sx
Дата сообщения: 24.02.2010 01:34
Здравствуйте, следующая проблема:

void myfunc(object obj, string type){

Convert obj to type

}

Т.е - имеется какой то обьект типа object + имя обьекта записанного в string. Как сконвертировать obj в заданный в строке тип? Тоесть при type = "Integer" я смог сконвертировать obj из object в integer?

Не могу в reflexions ничего работающего найти
Автор: BlackVetal
Дата сообщения: 24.02.2010 05:39
rain_sx
По опыту могу посоветовать для каждого типа использовать свою функцию. Например, myfunc_Int, myfunc_double и т.д. В функции можно идти двумя путями :
1. int.Parse(obj.ToString()), double.Parse(obj.ToString()) ...
2. Convert.ToInt(obj), Convert.ToDouble(obj) ...
Автор: vov4ka
Дата сообщения: 24.02.2010 07:13
mrlika, ух ты,спасибо большое,действительно полезная штука! Только вот незадача, количество ссылок и их структура у меня всегда разная и я наперед не знаю какой оно будет. Тут этот плагин мне поможет или все-таки кто-то с написанием проги поможет?
Автор: rain_sx
Дата сообщения: 24.02.2010 09:27
BlackVetal


А если нужный тип - мои собственные классы?
Автор: mrlika
Дата сообщения: 24.02.2010 10:44
vov4ka

В iMacros можно писать скрипты, которые будут искать ссылки, кнопки, нажимать на них и т.д. Все что тебе надо можно сделать. Правда Я сам этим сильно не занимался, просто знаю что такое есть. Погугли документацию, обучалки.

На официальном сайте есть много информации, включая обучающие материалы, но на английском:

http://www.iopus.com/imacros/firefox/?ref=fxmoz


Добавлено:
rain_sx

Во первых ты должен научить свой класс преводиться из obj. Вот пример:


Код:
class Monster
{

double len;

public Monster(double d)
{
len = d;
}

public static implicit operator double(Monster x)
{
return x.len;
}

public static explicit operator Monster(double v)
{
return new Monster(v);
}

}

class Program
{
static void Main()
{
Monster monster = new Monster(3);

double c = monster; //Неявное преобразование
Console.WriteLine(c);

monster = (Monster)12; //Явное преобразование
Console.WriteLine(monster);
}
}
Автор: rain_sx
Дата сообщения: 24.02.2010 13:01
mrlika


Да, но ты пишешь:

monster = (Monster)12;

Но то, что в скобках, а именно (Monster) есть только в String-переменной. Получается придется сделать какую нибудь функцию, которая в зависимости от переданного стринга создает обьект?

Что то вроде такого

if(typestring.equals("Monster")){
return (Monster)12;
}

??

Спасибо!

Автор: mrlika
Дата сообщения: 24.02.2010 15:13
rain_sx

а) Если Набор твоих типов ограничен можно создать switch:


Код:
switch (type) {
case "MyType1":
return (MyType1)obj;

case "MyType2":
return (MyType2)obj;

default:
throw new IllegalArgumentException("Type " + type + " is not supported");
}
Автор: BlackVetal
Дата сообщения: 25.02.2010 05:50
rain_sx
еще вариант - прочитай про сериализацию ...
Автор: mrlika
Дата сообщения: 25.02.2010 09:56
BlackVetal

А причем тут она?
Автор: BlackVetal
Дата сообщения: 25.02.2010 11:36
mrlika
При поставленной задаче - не совсем понятно что и для чего нужно переводить "object" в заданный тип. Возможно для решения задачи rain_sx сериализация и понадобиться ... Например, если задача хранения параметров.
Автор: mrlika
Дата сообщения: 25.02.2010 12:40
BlackVetal
rain_sx

Лучше сказать что все зависит от контекста. По этому rain_sx лучше конкретнее описать проблему и зачем это вообще нужно?
Автор: krasoff
Дата сообщения: 25.02.2010 16:00
ребят не подскажите какой-нить метод или свойство .net
которое бы возвращало имя приложения, которое пишется
у него в шапке (application title), по имени процесса.
спасибо
Автор: mrlika
Дата сообщения: 25.02.2010 16:24
krasoff

В шапке это где? Если ты про заголовок окна, то у процесса их может быть много. А вообще это делается с помощью WinAPI. Смотри в ту сторону. Можно побежатся по всем окнам, посмотреть каким процессам они принадлежат и посмотреть ихние заголовки.
Автор: krasoff
Дата сообщения: 26.02.2010 11:39
mrlika, спасибо за отклик
да у меня тут спец язык, который кроме своих функции и свойств еще и поддерживает .net классы, так что в вин апи обратитца не могу..
application title это название в заголовке программы..нашел вроде подходящее свойство assemblyinfo.title тока егошний класс этот мой язык не поддерживает так что может еще какие нить варианты?
Автор: mrlika
Дата сообщения: 26.02.2010 13:36
krasoff

Если есть поддержка классов .NET, то по идее можно и до WinAPI добраться, так как .NET это умеет:

Пример для функцит WinAPI GetDriveType:


Код:
using System.Runtime.InteropServices;

...

[DllImport("Kernel32.dll", EntryPoint = "GetDriveType")]
private static extern int GetDriveType(IntPtr lpRootPathName);

...

Автор: Leon PRO
Дата сообщения: 26.02.2010 14:00
Хотелось бы узнать наиболее "красивый" и короткий способ определить, соответсвует ли установленная версия .Net Framework той, на которой написано приложение.
Если версию фреймворка в системе я нашел через Environment.Version , то как узнать на какой версии сделал сборка ?
Заранее спасибо!
Автор: krasoff
Дата сообщения: 26.02.2010 16:24
mrlika
спасибо..очень интересно...буду пробовать

Добавлено:
Leon PRO
поставь себе последнюю версию фреймвока и все.
к чему такая точность.
Автор: mrlika
Дата сообщения: 26.02.2010 17:08
krasoff

Еще можешь попробовать подгрузить Assembly и получить все что тебе надо. Только я не знаю, на сколько это правильно. Пример


Код:
Assembly assembly = Assembly.LoadFrom("PATH TO FILE");


AssemblyDescriptionAttribute description = (AssemblyDescriptionAttribute)
AssemblyDescriptionAttribute.GetCustomAttribute(
assembly, typeof (AssemblyDescriptionAttribute));
            
AssemblyTitleAttribute title = (AssemblyTitleAttribute)
AssemblyTitleAttribute.GetCustomAttribute(
asembly, typeof (AssemblyTitleAttribute));

Console.WriteLine(title.Title);
Console.WriteLine(description.Description);
Автор: krasoff
Дата сообщения: 26.02.2010 17:28
mrlika
ммм..интересно..попробую...спасибо еще раз помощь))
Автор: LuckyStrike
Дата сообщения: 26.02.2010 21:51
Доброго времени суток парни, помогите реализовать алгоритм, в С# через Windows приложения с помощью инструмента Panel, вот задачка:
Реализовать в виде процедуры CDA алгоритм «Цифровой дифференциальный анализатор».
Предполагается, что:
• (x1, y1) — начальная точка отрезка;
• (x2, y2) — конечная точка отрезка;
• IntRe(x) — функция, преобразующая вещественные числа в целые;
• Sign(x) — функция, возвращающая -1, 0, 1 для отрицательного, нулевого и положительного аргументов соответственно;
• Plot(x,y) — функция, отображающая на экране точку с координатами (x, y).

Алгоритм:
If abs(x2-x1)>=abs(y2-y1) then
Длина=abs(x2-x1)
else
Длина=abs(y2-y1)
end if
dx=(x2-x1)/Длина
dy=(y2-y1)/Длина
x=x1+0.5*Sign(dx)
y=y1+0.5*Sign(dy)
i=1
while (i<=Длина)
Plot(IntRe(x),IntRe(y))
x=x+dx
y=y+dy
i=i+1
end while
finish

а вот примерный код, не пойму почему не работает(
Graphics _graphic;
Pen _pen;

private int Sign(double arg)
{
if(arg>0) return 1;
else if (arg<0)return -1;
else return 0;
}

private int IntRe(double arg)
{
return Trancate(arg);
}

private void Plot(int cordX, int cordY)
{
_graphic.DrawCurve(_pen, new Point[] {new Point(cordX, cordY)});
}

private void Calc()
{
double x1=0;
double x2=0;
double y1=0;
double y2=0;
double len=0;
double dx=0;
double dy=0;
double x=0;
double y=0;
if(Abs(x2-x1)>=Abs(y2-y1))
{len = Abs(x2-x1);}
else
{len = Abs(y2-y1);}
dx=(x2-x1)/len;
dy=(y2-y1)/len;
x=x1+0.5*Sign(dx);
y=y1+0.5*Sign(dy);
for(int i=0;i<len;i++)
{
Plot(IntRe(x),IntRe(y));
x+=dx;
y+=dy;
}
}

void main()
{
_pen = new Pen(Color.Red, 3);
_graphic = _panel.CreateGraphic();
}
Автор: BlackVetal
Дата сообщения: 27.02.2010 05:10
LuckyStrike
Метод Calc сам должен вызываться?
Автор: borodavolga
Дата сообщения: 27.02.2010 11:25
Помогите вот с чем:
Пишу софтину атоматизации приложения (плагин для CAD) - могу встроить vba (с помощью VBA SDK),
но хочу встроить C# - он работает быстрее (в моем случае это важно + в c# есть лямбда и linq)).
Задачи встают такие:
1) Генерить в рантаймме! для базы (к примеру MS SQL) код - получить программные сущности для таблиц/связей
(чтобы по ним можно было строить linq запросы);
2) Динамически компилячить мудули из сгенерированного кода;
3) Динамически выполнять код написанного юзером кода (скрипта)
4) Сделать подсветку синтаксиса (менее важно) и автолист меберс в текущем дата-контексте (вот это важно!)
5) Рендерить консольный output и дампить объекты в удобный, так сказать human-readable form
6) На будущее - сделать дебаг кода.
Вопрос - с помощью чего это все делать (по крайней мере чтобы не изобретать велосипед)
Я пока вот что намозговал (прямо по пунктам):
1) Либо вызывать SQLMetal (он быстрый), либо dbmetal из комплекта dblinq
(можно также раздербанить его исходники), либо использовать командную тулзу SubSonic'а
2), 3) пока не знаю - начал копать cs-script, nscript, DotNetScript - кто-нибудь имеет
опыт с чем-нибудь? (по идее желательно чтобы двиг имел задел и на возможность подсовывания vb.net кода)
4) (Avalon Edit + SharpDevelop.Dom) by ICSharpCode
5) xml/xslt + нужен быстрый html-рэндерер. Думаю в сторону HTMLayout (есть другие предложения - биндинги WebKit? QT?)
6) для меня темный лес
В итоге должен полжно получится что-то вроде linqpad со своей спецификой.
Очень нужны советы по любому из пунктов.
Заранее спасибо.
Автор: LuckyStrike
Дата сообщения: 01.03.2010 06:11
BlackVetal
да

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102

Предыдущая тема: Как удалить/добавить/отключить/включить устройство?


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.