Задай вопрос экспертам!

Посмотреть всех экспертов из раздела Технологии > .Net/C#

Ребята здарова.
Вот такой вопрос. Работаю на Visual Studio 2008 ru
Я хочу создать программу шахматы (Не судить строго)
Создаю форму.
На форму кидаю PictureBox1 и в ресурсах создаю картинку 400х400 пикселей — это типа доски (уже закрашенная в клеточку) расширение файла bmp.
кидаю на форму вторую PictureBox2 и она содержит в себе некую фигуру игры.

Вопрос.
Как сделать так чтобы фигурка была без фона, в смысле не прозрачная, а чтоб видна была! только фигура и клетка за этой фигурой, как бы есть фигура и всё, т.е. фон не показывался при ее перемещении?

Пробовал различные варианты, например
в свойствах формы ставил TransparencyKey как White или Transparent но результат не тот. при установке белого цвета в форме и фона рисунка как белый равно как и прозрачный, все что на форме имеет белый цвет становится прозрачным. А хотелось бы чтобы была доска в клетку 8х8 и
фигурки на это доске без фона просто фигура скажем синего и зеленного цветов.

Помогите.
Заранее спасибо.

 

p.s. если можете то с кодом. Пожалуиста.

Пользуюсь библиотекой WPF NotifyIcon http://www.codeproject.com/Articles/36468/WPF-NotifyIcon. При создании Custom Baloon Notification вылезло исключение, которое вывело ексепшн: InvalidOperationException и вывело ошибку: вызывающим потоком должен быть sta

Добрый день. Третий день не могу разобраться. Первый раз пишу приложение для windows phone 8.1. В нём будет использоваться база данных (заранее заполненная), в которую будут добавляться новые записи по мере надобности. Т.е. нужно уже готовую базу данных как-то добавить в приложение(ресурсы?)и при первом запуске скопировать её в локальную папку на устройстве. Нашёл статью [http://developer.nokia.com/community/wiki/How_to_use_SQLite_in_Windows_Phone#Preparing_the_application_to_publish_to_the_Store][1], но код из того примера не работает.

`
private async void Application_Launching(object sender, LaunchingEventArgs e)
{
StorageFile dbFile = null;
try
{
dbFile = await StorageFile.GetFileFromPathAsync(MainPage.DB_PATH);
}

catch (FileNotFoundException)
{

if (dbFile == null)
{
IsolatedStorageFile iso =IsolatedStorageFile.GetUserStoreForApplication();

// Create a stream for the file in the installation folder.
using (Stream input = Application.GetResourceStream(new Uri(«sample.sqlite», UriKind.Relative)).Stream)
{
using (IsolatedStorageFileStream output = iso.CreateFile(MainPage.DB_PATH))
{
// Initialize the buffer.
byte[] readBuffer = new byte[4096];
int bytesRead = -1;

// Copy the file from the installation folder to the local folder.
while ((bytesRead = input.Read(readBuffer, 0, readBuffer.Length)) > 0)
{
output.Write(readBuffer, 0, bytesRead);
}
}
}
}
}

`
ругается на isolatedstoragefile,application.getresourceStream(),isolatedstoragefilestream. Что не так? Или как можно другим способом реализовать копирование базы

[1]: developer.nokia.com/community/wiki/How_to_use_SQLite_in_Windows_Phone#Preparing_the_application_to_publish_to_the_Store

Программа LightSwitch (C#)

Вопросы:

1) В программе LightSwitch у меня созданые две таблицы, при этом таблицы соеденены как «ОДИН» ко «Многим». Я могу спокойно использовать данные в вычисляемых полях из таблицы «ОДИН» в таблице «Многим» (пример Tabl1.«наименование сущьности»), но мне нужно чтобы я смог использовать данные из таблице «МНОГИМ» в таблице «ОДИН», через команду указанную как пример, я этого сделать не могу, подскажите как это можно сделать?

2) В созданной таблице имеются две сущности типа decimal. Одна сущность помечена как вычисляемое поле.

После запуска отладки я забиваю данные в таблицу и мне нужно, чтобы вычисляемое поле прибавляло свое значение в первой строке ко второй. Каким образом нужно написать формулу?

Нужно создать файл в каталоге \Data\ruRU\realmlist.wtf относительно расположения програмиы, если такой существует очистить, и записать в него строку, например «123».

Делал так:

var file = new StreamWriter(«Data\\ruRU\\realmlist.wtf»);
file.WriteLine(«123»);
file.Close();

Создал необходимые папки, но получил ArgumentExeption 

C#

открываешь ссылки в браузере клиент нормально их принимает и передаёт серверу. Сервер выводит что нужно. Но вот когда открываешь браузер и там закреплено 15-20 ссылок сервер принимает не все. Много пустых строк. С чем это может быть связано? где проблема на сервере или на клиенте? Как это исправить? Клиент:

Код C# 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using System.Windows.Forms;

using System.Net;
using System.Net.Sockets;

namespace client
{
public class client
{
public int status_client; //отключение от сервера
static public int identifikator = 1; //проверка первого подключения

public string enter_IP_server = null; //IP весервера

public byte[] message_brau = new byte[256];
public byte[] message = new byte[256];

public void start()
{
Error error = new Error();
client Client = new client();

try
{
IPAddress localAddress = IPAddress.Parse(«127.0.0.1»);
TcpListener listener = new TcpListener(localAddress, 2010);

listener.Start(1);

if (enter_IP_server.Length == 0)
{
error.EnterIP();
}

else
{
while (Client.status_client == 0)
{
// TcpClient client = new TcpClient(«192.168.129.129», 2010);
TcpClient client = new TcpClient(«127.0.0.12», 2010);

NetworkStream io = client.GetStream();

TcpClient client_brau = listener.AcceptTcpClient();
NetworkStream io_brau = client_brau.GetStream();

string data = null;
// zapros(io);
//--------принимает и передаёт данные с браузера
int i = io_brau.Read(message_brau, 0, message_brau.Length);
data = System.Text.Encoding.UTF8.GetString(message_brau, 0, i);

if (data.Length > 5)
{
message = System.Text.Encoding.ASCII.GetBytes(data);
io.Write(message, 0, message.Length);
}

client.Close();
client_brau.Close();
}
}
}
catch (Exception w)
{
error.Connect(w);
}
}

public void zapros(NetworkStream io)
{
Error error = new Error();

string data = null;

byte[] message_write = new byte[256];//отправка
byte[] message_read = new byte[256];//принятие

byte[] buffer = new byte[256];
buffer[1] = 0x05; //номер версии
buffer[2] = 0x01; //количество методов
buffer[3] = 0x00; //номер метода

io.Write(buffer, 0, buffer[1]);

int i = io.Read(message_read, 0, message_read.Length);
data = System.Text.Encoding.UTF8.GetString(message_read, 0, i);
if (data == «Error version SOCKS.»)
{
error.socksVersion();
}
}

}
}

 

сервер:

using System;
using System.Net;
using System.Text;
using System.Net.Sockets;

namespace server
{
class Program
{
//--------запросы
static public byte[] buffer = new byte[256];


static void Main(string[] args)
{

ASCIIEncoding encoding = new ASCIIEncoding();
byte[] message_Read = new byte[256];

string data = null;

byte[] buffer = new byte[256];

try
{
IPAddress localAddress = IPAddress.Parse(«127.0.0.12»);
TcpListener listener = new TcpListener(localAddress, 2010);

listener.Start(1);

while (true)
{

Console.WriteLine(«Сервер ожидает {0}», listener.LocalEndpoint);
TcpClient client = listener.AcceptTcpClient();
NetworkStream io = client.GetStream();

Console.WriteLine(«Принято соединение от {0}», client.Client.RemoteEndPoint);

// zapros(io);
int i = io.Read(message_Read, 0, message_Read.Length);
data = System.Text.Encoding.UTF8.GetString(message_Read, 0, i);
Console.WriteLine(«Принято сообщение от {0}: {1}», client.Client.RemoteEndPoint, data);
Console.WriteLine();

client.Close();
}

}
catch (Exception e)
{
Console.WriteLine(«Произошла ошибка {0}», e.Message);
}
}

static public void zapros(NetworkStream io)
{
buffer[1] = 0x05;
buffer[2] = 0x01;

byte[] message_Read = new byte[256];
byte[] messageError = new byte[256];

io.Read(message_Read, 0, message_Read.Length);

if (message_Read[1] != buffer[1])
{
messageError = System.Text.Encoding.ASCII.GetBytes(«Error version SOCKS.»);
io.Write(messageError, 0, messageError.Length);
Console.WriteLine(«Error version SOCKS.»);
}
else
{
if ((message_Read[3] == 0x00) || (message_Read[3] == 0x01) || (message_Read[3] == 0x02))
{
io.Write(buffer, 0, buffer[1]);
Console.WriteLine(«OK method: {0}», buffer[3]);
}
else
{
//----если метод неверный то отправляем по дефолту
//----без авторизации (0x00)
buffer[3] = 0x00;
io.Write(buffer, 0, buffer[1]);
Console.WriteLine(«Method 0x00»);

}
}
}

}
}

 

 Помоги нужно очень срочно… Буду очень признателен.

Здравствуйте, у меня скорость интернета 10Мб/с, когда я загружаю в интернет видео 4-х минутное, оно у меня грузиться 1 и более часа, что делать? и какая должна быть скорость передачи? у меня скорость передачи 0.25 Мб/с

Есть формы OuterForm(Внешняя форма) и InnerForm(Внутренняя форма), внутренняя вызывается по нажатию баттона на внешней. Есть обьект MyObject с тремя свойствами A, B, C и полями a, b, c соответственно, который обьявлен в OuterForm и передается в качестве параметра в InnerForm. Ввести данные для изменения обьекта и изменить его можно только в InnerForm нажатием кнопки «Применить».

Вопрос: Как написать такое событие для обьекта, которое будет происходить, если после нажатия кнопки «Применить» на InnerForm одно или несколько полей/свойств обьекта MyObject будут изменены.

Где найти удобный визуальный редактор для разработки для windows forms?

Подскажите пожалуйста. Я пишу клиент-серверное приложение на C#. Сервер многопоточный, рассчитан на множество клиентов. Правильно ли будет обмениваться командами между сервером и клиентом пересылками текстоввых строк, к примеру: register|login|password на сервере ее разобрать методом split по символу-размелитетю, switch'ем определить случай register, вызвав метод, к примеру RegisterUser(string a,string b) << передав ему параметры логина и пароля

{

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

} мне почему то такой подход кажется ошибочным, не все работает, например отправить обратно через networkstream сообщение клиенту «регистрация успешна» сразу же не получается :(

подскажите пожалуйста, Уважаемые эксперты

В Windows Forms есть компонент(класс) NotifyIcon, предназначенный для работы с треем. В WPF такого я не нашел. На форумах пишут, что нужно его же, NotifyIcon использовать и в WPF, только как это делать я не понял. Разьясните пожалуйста как решить проблему или киньте хорошую ссылку :)
Спаисбо!

Добрый день, уважаемые эксперты! Я вот несколько дней мучаюсь с одним вопросом. Пишу клиент и сервер для удаленной файловой синхронизации на C#. Задача состоит в односторонней синхронизации файлов и папок: у клиента при регистрации создается папка, все изменения которой будут прямо отражаться на сервере. Собственно вопрос у меня в следующем: Как лучше организовать этот «движок»? Я себе это так представляю: В шарпе есть классFileSystemWatcher, с помощью которого клиент отслеживает изменения в файловой системе, и на основе создаваемых событий формирует команды для сервера: перекачать на сервер, переместить папку, создать папку ну и так далее. Команды перемещаю строками по SSL каналу в открытом виде, там парсером разбираю и организую реагирование. Пожалуйста подскажите, можно ли таким путем идти. Я в программировании, в частности в C#, недели три, занимаюсь весь день за вычетом сна (5ч), очень срочная работа :) Microsoft Sync Framework я пробовал, но он запутанный и даже стандартный пример на msdn выдает ошибку о незарегистрированном классе FileSystemProvider ( Да и вообще хотелось бы своими руками реализовать синхронизацию, ведь сто процентом все эти SDK собраны из более простых вещей :) Заранее спасибо!

Есть обьект, например:

MyClass myClassObject;

Инициализирую его:

myClassObject = new MyClass();

Затем после махинаций с ним мне нужно его принудительно удалить, как это сделать? 

С#

Меня зовут Юрий. Если можете помочь в решении небольшой задачи не откажите.

Суть проблемы (пишу на VB.Net) :

  1. Создана форма. На Form1 единственный элемент TextBox1.
  2. Открыта «Книга1» Excel
  3. Создано стандартное соединение СОМ .

Dim Exc As Object = CreateObject(«Excel.Application»)

Exc.Workbooks.open(«F:\Documents and Settings\.......................\........xlsx»)

Exc.Visible = True

Exc.Sheets(1).Activate()

TextBox1.Text = Exc.Sheets(1).Cells.Item(j, 7).Value

 

 

  1. Необходимо чтобы работал следующий механизм (без КНОПКИ и без ТАЙМЕРА),

Но не получается.

 

Вводится в ячейку А1 число – должно отобразиться в TextBox1.(без нажатия каких-либо кнопок на Form1)

Вводится в ячейку А2 число – должно отобразиться в TextBox1.

Вводится в ячейку А3 число – должно отобразиться в TextBox1.

Вводится в ячейку А4 число – должно отобразиться в TextBox1.

…………………… и т.д.

 

Кто в курсе, подскажите.

Здравствуйте, возникла следующая проблема: делаю запрос к серверу через httpWebRequest

static void Main(string[] args)

 { 

          var httpWebRequest = (HttpWebRequest)WebRequest.Create(«www.google.ru/sorry/Captcha?continue=http%3A%2F%2Fwww.google.ru%2Fsearch%3Fq%3D%25D1%2581%25D0%25B5%25D0%25BE%25D0%25BF%25D1%2583%25D0%25BB%25D1%258C%25D1%2582%25D1%2583%25D1%2581%26channel%3Dlinkdoctor&id=10783499217868175628&captcha=2119579&submit=%D0%9E%D1%82%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D1%82%D1%8C»);           

httpWebRequest.AllowAutoRedirect = true;   

httpWebRequest.CookieContainer = new CookieContainer();   

 if (Cooks != null)

{              

httpWebRequest.CookieContainer.Add(Cooks); 

}           

HttpWebResponse httpWebResponse = (HttpWebResponse)httpWebRequest.GetResponse();         httpWebResponse.Cookies = httpWebRequest.CookieContainer.GetCookies(httpWebRequest.RequestUri);   

{            

  Cooks.Add(httpWebResponse.Cookies);

Stream stream = httpWebResponse.GetResponseStream(); 

if (stream != null) 

 

 var reader = new StreamReader(stream); 

 Console.Write(reader.ReadToEnd());  

  } 

}

Возникает исключение и соединение закрывается.

Как можно проигнорировать ошибку и получить данные с сервера?

Как отправить почту с mail.ru на ukr.net

муж просматривал сайты, а после удалил браузер. хотелось бы узнать, можно как нибудь просмотреть где он лазил
Разместите на форме ряд кнопок (Button). Создайте обработчики события нажатия на данные кнопки, которые будут делать неактивными текущую кнопку. Создайте обработчик события изменение размера формы (Resize), который будет устанавливать все кнопки в активный режим.
c#

Я немогу сменить доступ Nat с закрытого на открытый. В интернете множество способов, но толи я слишком глуп, толи они мне не подходят. Открытый Nat мне нужен для того, чтобы поключаться к друзьям в компьютерных играх.

У меня windows 7, к интернету подключаюсь через модем. Жду помощь!

Нужно по нажатию определенной клавиши выполнить определенную функцию, при этом фокус будет не нашей программе, либо программа вообще будет свернута.

Привет! Помогите реализовать код для ZennoPoster
Задача:
1)Взять из списка(txt файла) первую строку, н-р, «моя бабушка курит трубку»
2) Разбить ее на слова и записать через запятую в конец строки в этом же файле, н-р, моя бабушка курит трубку, моя, бабушка, курит, трубку,
3)Комбинировать все слова и записать их в конец стоки через запятую, н-р, моя бабушка, моя бабушка курит, бабушка курит трубку, трубку курит моя бабушка, бабушка моя курит и т.д.
P.S. В C # ничего не понимаю.
Может есть другие идеи реализации задачи кроме C#, буду рада любому варианту!

подскажите, пожалуйста, как разблокировать сайт фотострана

Нажимаю на Grid моего окна, в окне редактора «Properties» нахожу background и при помощи пиктограммы картинки добавляю изображение. После этого выбираю его, нажимаю «ок» — пишет что свойство не корректно. Картинку сам сделал на фотошопе и сохранил как для веб устройств.  Пробовал разные форматы. Что делать?)

Здравствуйте.

подскажите — если создавать распределенные приложения на c#, то .NET Remoting подходит для этого? или может что-то другое лучше выбрать?

Нужно разработать в C# приложение, где будет очень много элементов, которые будут распологаться на одной форме. В Delphi я создавал фреймы и по-отдельности в них добавлял нужные элементы, затем все эти фреймы лепил на главную страницу, затем при помощи кнопок скрывал ненужные и показывал нужные фреймы, тем самым, группируя элементы с возможностью их редактирования и просмотра в любой момент. Как также сделать и в Windows Forms в C#? Также хотелось бы знать, как это делать в WPF?

Нужно проверить, соединяется ли программа с фтп сервером, создал новый поток, в нем создал обьект типа FTPClient (Пользуюсь сторонней библиотекой BytesRoad.Net.FTP), сказал программе подключаться к серверу через этот клиент, затем ввел проверку:

if (client.IsConnected == true) 

    MessageBox.Show(«Соединение установлено»);

Если все делать без потока — работает на ура, иначе, внутри потока — ничего не происходит. Как решить проблему? 

Как в c# при нажатии на кнопку (напр. button1) на Form1 сделать так, чтобы закрывалась Form2

Вызов методя из dll(com clr c++) из программы на C# происходит катострофиески медленно, порядка 0,3 милисекунды при том что сам метод отрабатывает за 0,1 милисекунды. Куда деваются 0,3 милисекунды и как ускорить вывов этого метода?

Как сделать так, чтобы при нажатии комбинации клавиш, выполнялась нейкая функция?

C#

Срочно, нужно написать программу по обработке изображения, по заданной теме. Язык программирования C#, C++. Тема: Адаптивное увеличение контрастности с учетом локальной статистики. Оплата договорная.

понимаем.Нам нужен код, подключающийся к yandex speech и выпиливающий в переменную значение ответа от яндекса

Если можно все сделать на lua, тогда мы будем рады

Здравствуйте, я хочу разбить видео на кадры. Нашёл IMediaDet::GetBitmapBits метод, но как то с ним не разобрался, прошу помочь

C#

Имеется класс с кучей данных о человеке, нужно записать этот класс в файл, затем этот файл считать. (Windows Forms)  

Или другими словами, как просмотреть коллекцию Application.Current.Windows и вообще коллекции ?

Здравствуйте, подскажите решение для исключения перед добавлением в базу access дубликатов.

this.backlinksTableAdapter.Adapter.SelectCommand.CommandText = «SELECT Url FROM backlinks WHERE Url LIKE '» + match.Value.ToString() + "%'";

Думал осуществить выборку из базы с помощь оператора LIKE и сделать проверку через количество возвращенных строк из базы, можно реализовать?

Нужно захватить изображения с экрана нажатием комбинации клавиш Ctrl+Prt Sc, вывести его  в форме и сохранить в файл. Желательно в WPF. Как это сделать?

Нужно, чтобы, когда форма открывается, курсор стал в нужный мне TextBox

Здравствуйте! Помогите пожалуйста советом. Как заполнить dataGridView из array, если элементы массива не одного типа.

У меня есть данные хранящиеся в бинарном файле в определенной структуре. При считывании файла получаю структуру данных и сами данные. Записываю в массив, который потом передаю как источник данных в dataGridView

ArrayList array = new ArrayList();

for (int i = 0; i != countRecords; i++)
{

       ArrayList arrayRow = new ArrayList();

       for (int j = 0; j != countFields; j++)
       {

            // получаю значение полей и записываю в массив строки (тут может использовать какую то структуру, которую определить ранее, но я такое не использовал ранее)
            arrayRow.Add(value);
       }
       array.Add(arrayRow);
}

tf.dataGridView1.DataSource = array;

В результате строки добавляются, но данные не передаются.

Как разумнее поступить в данной ситуации?

Программа записывает в файл данные о пользователе(все типа string), каким способом их лучше всего зашифровать?

Есть класс MyClass и 4 свойства типа string: A, B, C, D, и, соответственно, 4 поля a, b, c, d. Как можно наиболее изящно реализовать событие изменения полей, при чем нужно чтобы событие сработало, если хоть одно поле будет изменено.

Код писать не нужно, достаточно словесного обьяснения 

C#

Подскажите как удалить элемент из строкового массива? Массив образован методом split нужно удалить дубликаты строк