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

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

Автор: dneprcomp
Дата сообщения: 09.03.2011 20:46
CyberMaster0
Может попробовать использовать специализированные контролы NumericUpDown или MaskedTextBox вместо всевозможных запретов и проверок через код. Эти контролы предназначены именно для формата и ограничения вводимых значений.
Автор: delover
Дата сообщения: 10.03.2011 10:48
svs123456789

Цитата:
как будто вебброузер не активизируется

Длинная очень история. Я только покажу что у меня получилось:

Код:
public partial class Form1 : Form
{
...
private bool DocumentCompleted = true;
...
Автор: CyberMaster0
Дата сообщения: 10.03.2011 19:26
Удалено...
Автор: CyberMaster0
Дата сообщения: 11.03.2011 10:26
Как контрол "NumericUpDown" заставить не округлять числа? То есть что бы число 2,657 не округляло автоматом до 3?
Автор: lerthe61
Дата сообщения: 11.03.2011 11:44

Цитата:
Как контрол "NumericUpDown" заставить не округлять числа? То есть что бы число 2,657 не округляло автоматом до 3?


DecimalPlaces = 3
Автор: svs123456789
Дата сообщения: 18.03.2011 08:02
delover
спасибо! это просто шаманство какое то!

во фрагменте :
SendKeys.SendWait("^f"); // ^= ctrl 'find dialog
SendKeys.Send(textBox1.Text); //'fill search
SendKeys.SendWait("~"); // ~= enter 'search

почему то не передаются русские символы

Автор: AKRAV
Дата сообщения: 18.03.2011 13:47
Ребята подскажите пожалуйста кто действительно пробовал, установить параллельно две разные версии DevExpress DXperience например 10.1 и 10.2, всё ли нормально работает, проекты компилятся с нужными сборками и работают корректно после этого?
Понимаю, что там разные имена сборок у версий и они вроде как без проблем должны установиться и работать, но всё же что-то не хочится экспериментами поломать что-нибудь.
Заранее спасибо за помощь.
Автор: BlackVetal
Дата сообщения: 18.03.2011 15:03
AKRAV
По своему опыту скажу вот что:
У меня до сих пор стоит 10.2 и 9.1 (старый проект остался на 9.1). Особых проблем нет - если внимательно складывать компоненты на форму из одной версии компонент. В toolbox - группы дублируются но с разными номерами.
А вобще - оставляй 9.2 и работай спокойно. в самом проекте в references у каждой подключенной библиотеки поставь свойство "Specific version" в false. это облегчит обновление компонент (которое можно сделать конвертором).
Автор: AKRAV
Дата сообщения: 18.03.2011 15:16
BlackVetal спасибо за инфу, так себе и представлял всю процедуру, просто боялся может, что иное поломается. Значит буду ставить. Ещё раз спасибо.
Автор: CyberMaster0
Дата сообщения: 24.03.2011 20:18
Задача: при нажатии на кнопку, в буфер обмена копируется текст. Я делаю это таким образом:

Код:
private void copyButton_Click(object sender, EventArgs e)
{
StringBuilder sb = new StringBuilder();

string copyText = sb.AppendFormat(@"текст
текст 1 {0}
текст 2 {1}
текст 3 {2}", Label1.Text, Label2.Text, Label3.Text).ToString();

Clipboard.SetText(copyText, TextDataFormat.Text);
}
Автор: ita2008
Дата сообщения: 30.03.2011 13:34
Есть форма windows, в форме нужно дать пользователю возможность указать дату и время какого-то события.
нашел monthCalendar и dateTimePicker
судя по msdn последний подходит, но вот как с его помошью позволить пользователю выставить дату и время понять не могу
не хотелось бы использовать текстовое поле для ввода часов и минут..
Автор: Omicron_Persey_8
Дата сообщения: 30.03.2011 20:14
ita2008
Ищи лучше
Автор: BlackVetal
Дата сообщения: 31.03.2011 06:13
ita2008
Насколько интенсивно будет использоваться твоя форма? при большой нагрузки нет ничего лучше чем текстовое поле ...
Автор: cHeRsAnYa1
Дата сообщения: 31.03.2011 22:33
Подскажите, как можно получить наиболее полную информацию о батарее (такую, например, как текущая потребляемая мощность, полная мощность и т.п.)? Пробовал такое, но тут из полезного у меня выводит только заряд в процентах и примерное оставшееся время работы.
Такую информацию точно можно получить, есть сторонние утилиты, которые её отображают...
Автор: ita2008
Дата сообщения: 01.04.2011 16:13
BlackVetal
нагрузка не большая. а просто текстовое поле.. лишние проверки..
Omicron_Persey_8
уже нашел. но что получатется..

но вот как-то странно.. можно получить дату, без времени, можно получить отдельно часы, минуты, год, месяц.. а дату + время - не понял как..
дату нужно конвертировать в unix timestamp.. пришлось все брать по отдельности..



Автор: BlackVetal
Дата сообщения: 04.04.2011 06:00
ita2008
Могу тебе предложить как вариант использовать сторонние компоненты (Дефки или инфрагистик) - там есть более доработанные компоненты ...
Автор: delover
Дата сообщения: 08.04.2011 14:02
All
Здравствуйте, скажите может кто в курсе, если нет то конечно новость будет. В Framework 4.0 важные системные компоненты работают не корректно, а именно:
System.IO.Compression.GZipStream и System.IO.Compression.DeflateStream!

Чтобы разобраться я набросал тестовый код и выложил свой файл который они не умеют сжимать:
Лист учета рабочего времени.doc
А вот код:
[more=TestZip]
Код: [no]
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.IO.Compression;

namespace TestZip
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
string fn = textBox1.Text;
if (!File.Exists(fn)) return;
byte[] Body = null;
long l1 = 0;
using (FileStream fs = new FileStream(fn, FileMode.Open))
using (MemoryStream ms = new MemoryStream())
using (GZipStream ds = new GZipStream(ms, CompressionMode.Compress))
{
l1 = fs.Length;
fs.CopyTo(ds);
Body = new byte[ms.Length];
ms.Position = 0;
ms.Read(Body, 0, (int)ms.Length);
}
long l2 = 0;
using (MemoryStream ms1 = new MemoryStream())
{
ms1.Write(Body, 0, Body.Length);
ms1.Position = 0;
using (GZipStream ds = new GZipStream(ms1, CompressionMode.Decompress))
using (MemoryStream ms2 = new MemoryStream())
{
ds.CopyTo(ms2);
l2 = ms2.Length;
}
}
if (l1 != l2)
MessageBox.Show("GZip архивирует неправильно!\r\n"+
"Файл размером " + l1.ToString() + " байт,\r\n"+
"после разархивирования стал размером " + l2.ToString() + " байт.");
else
MessageBox.Show("А это GZip архивирует правильно...");
}

private void button2_Click(object sender, EventArgs e)
{
string fn = textBox1.Text;
if (!File.Exists(fn)) return;
byte[] Body = null;
long l1 = 0;
using (FileStream fs = new FileStream(fn, FileMode.Open))
using (MemoryStream ms = new MemoryStream())
using (DeflateStream ds = new DeflateStream(ms, CompressionMode.Compress))
{
l1 = fs.Length;
fs.CopyTo(ds);
Body = new byte[ms.Length];
ms.Position = 0;
ms.Read(Body, 0, (int)ms.Length);
}
long l2 = 0;
using (MemoryStream ms1 = new MemoryStream())
{
ms1.Write(Body, 0, Body.Length);
ms1.Position = 0;
using (DeflateStream ds = new DeflateStream(ms1, CompressionMode.Decompress))
using (MemoryStream ms2 = new MemoryStream())
{
ds.CopyTo(ms2);
l2 = ms2.Length;
}
}
if (l1 != l2)
MessageBox.Show("Deflate архивирует неправильно!\r\n" +
"Файл размером " + l1.ToString() + " байт,\r\n" +
"после разархивирования стал размером " + l2.ToString() + " байт.");
else
MessageBox.Show("А это Deflate архивирует правильно...");
}

private void button3_Click(object sender, EventArgs e)
{
if (openFileDialog1.ShowDialog() != DialogResult.OK) return;
textBox1.Text = openFileDialog1.FileName;
}
}
}
[/no]
Автор: Andryshok
Дата сообщения: 08.04.2011 21:54
ita2008
Для одного dateTimePicker
выставте свойство dateTimePicker
Format = Custom;
Custom format = нужная вам строка форматирования даты/времени
ShowUpDown = true;


Либо 2 dateTimePicker - один для даты, другой - для времени, во втором свойство Format = Time



Добавлено:

Цитата:
дату нужно конвертировать в unix timestamp.. пришлось все брать по отдельности..

Для этого достаточно разбить дату/время на составляющие и потом собрать в нужную строку...- как - написать свой

Код:
private string ConvertDatetoUnix(DateTime DATA)
{
string s;
s = разбираю тут дату и собираю......
return s;
}

Или - быть ищо круче - написать свой класс (или библиотеку классов - сборку) в котором перегрузить функцию конвертирования хоть сразу на 5 - юниксовских и маковских форматов
Автор: AutoIT
Дата сообщения: 09.04.2011 10:42
Народ помогите кто шарит.
Начал писать "надстройку" на uTorrent, и наткнулся на следующую проблему - на мой взгляд некорректно указанны флаги состояний при запуске приложения при изменении статуса торрента. Поясняю:

1. Язык C# (NFW v4.0)
2. Приложение тут.
3. Исходник здесь.
4. В Настройках программы (uTorrent -> Настройка -> Конфигурация -> Дополнительно -> Запустить программу -> Выполнить эту программу при изменении торрента) прописана следующая строка (без одинарных кавычек) - '"E:\Творчество & Кодинг\C++, C#\Projects\Test Projects\CommandLine\CommandLine\bin\Debug\CommandLine.exe" -"%F", -"%D", -"%N", -%S'.
5. Для тех кому лень выкачивать структура Enum'a:

Код: [Flags]
public enum State
{
Started = 1,
Checking = 2,
StartAfterCheck = 4,
Checked = 8,
Error = 16,
Paused = 32,
Auto = 64,
LoadCompleate = 128
}
Автор: niichavo
Дата сообщения: 10.04.2011 15:44
EF 4.1 Code First наследование и отношение многие-ко-многим. Увы, не работает

Есть классы:

Код: public abstract class Owner
{
    public Guid Id { get; set; }
}

public class User : Owner
{
    string _Login;

    public User()
    {
        Groups = new List<Group>();
    }

    public string Login { get; set; }
    public virtual ICollection<Group> Groups { get; set; } // группы, в которых состоит пользователь
}

public class Group : Owner
{
    public Group()
    {
        Members = new List<Owner>();
    }

    public string Name { get; set; }
    public virtual ICollection<Owner> Members { get; set; } // члены группы - пользователи и/или группы
}

public class TestDbContext : DbContext
{
    public DbSet<Owner> Owners { get; set; }
}
Автор: BlackVetal
Дата сообщения: 11.04.2011 07:47
niichavo
Насколько я понимаю - у тебя получается связи в обе стороны. Это возможно вызызвает ошибку, так как в одной таблице уже есть объект, а в другой таблице объекта нет еще, но при этом происходит попытка установить связь между таблицами (объектами).
Вариант решения - сначала поместить объекты в БД (user и group), а потом устанавливать связь (user1.Groups.Add(group1);) ...
Автор: niichavo
Дата сообщения: 11.04.2011 09:30
BlackVetal
Возможно ты прав. Попробую. Правда мне кажется, что проблема не решится. Ибо этот код генерит одну таблицу Owner. Ну а если пользователь входит, например, в 2-е группы, то нужны 2-е записи c одинаковым уникальным ключём Id. Будет исключение при добавлении второй записи. Т.е. в данном случае наследование работает, а отношение многие-ко-многим нет. Как "заставить" EF генерить бОльшее количество таблиц с правильными связями и чтоб наследование не потерялось - это вопрос.
Автор: Andryshok
Дата сообщения: 11.04.2011 18:40
Коллеги, а не знает ли кто как изменить цвет нужной строкиа у XtraGrid от DevExpress, но не в событии customDraw , а допустим жамкаю на кнопку, идет перебор строк таблицы и если допустим произошло событие - то меняется цвет i-той сроки, а не произошло - не меняется
Автор: niichavo
Дата сообщения: 11.04.2011 22:05
Получилось!

Класс Group:

Код:
public class Group : Owner
{
public Group()
{
Members = new List<Owner>();
}

public string Name { get; set; }
public virtual ICollection<User> MemberUsers { get; set; }
public virtual ICollection<Group> MemberGroups { get; set; }
}
Автор: BlackVetal
Дата сообщения: 12.04.2011 05:33
Andryshok
Событие StyleRow - получаеш строку, береш Appearance и меняеш цвет (например, BackColor)

Код:
private void gridView1_RowStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowStyleEventArgs e)
{
DevExpress.XtraGrid.Views.Grid.GridView view = gridControl1.MainView as DevExpress.XtraGrid.Views.Grid.GridView;
try
{
decimal _номер = (decimal)view.GetRowCellValue(e.RowHandle, gridColumn_номер);
if (textEdit_Seach.Text != "" && e.RowHandle >= 0 && _номер != 0)
if (_номер == decimal.Parse(textEdit_Seach.Text))
{
view.Appearance.OddRow.BackColor = Color.Yellow;
view.Appearance.EvenRow.BackColor = Color.Yellow;
}
else
{
view.Appearance.OddRow.BackColor = Color.AliceBlue;
view.Appearance.EvenRow.BackColor = Color.MintCream;
}
}
catch
{
}
}

Автор: Andryshok
Дата сообщения: 12.04.2011 06:46
BlackVetal СПС, но мне нужно раскрасить строки не в событиях грида, а извне
Автор: deusex3
Дата сообщения: 12.04.2011 19:04
Перенаправлено в "Использование DevExpress (часть 4) "
Автор: BlackVetal
Дата сообщения: 13.04.2011 06:02
Andryshok
Я в принцепе тебя понял - я тебе такой код и показал: фон меняет цвет при поиске - если на форме имеется результат.
Автор: delover
Дата сообщения: 15.04.2011 06:49
Как задать цвет фона компоненту WebBrowser? Дело в том что когда он перерисовывается сначала стирает всё белым, а потом рисует страничку с зелёным фоном. Очень некрасиво.
Автор: moverast
Дата сообщения: 18.04.2011 13:25
в Visual Studio 2010 есть удобный инструмент для сохранения настроек программы "класс Settings", но проблема в том, что он сохраняет файл с настройками по умолчанию в "c:\Users\user\AppData\...".
Я хочу сохранять настройки в каталог с программой, что бы программа была portable. Как изменить путь куда сохраняется файл класса Settings?

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102

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


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