2017-02-14 1 views
0

решаемыхRun C# код, когда кнопка нажата в Блендах Visual Studio 2015

Я искал какое-то время и не мог найти ответ, так что я предполагаю, что это поможет несколько людей.

Я нашел blend - это потрясающее место, чтобы создать приятный интерфейс.

Я сделал простой button в Blend, из Visual Studio 2015.

Часть XAML этой кнопки выглядит следующим образом:

<Window x:Class="WpfApplication1.MainWindow" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
     xmlns:local="clr-namespace:WpfApplication1" 
     mc:Ignorable="d" 
     Title="MainWindow" Height="350" Width="525"> 
    <Grid> 
     <Button x:Name="button" Content="Button" Margin="56.471,79.283,54.639,68.382"/> 

    </Grid> 
</Window> 

и файл CS выглядит следующим образом:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.Windows; 
using System.Windows.Controls; 
using System.Windows.Data; 
using System.Windows.Documents; 
using System.Windows.Input; 
using System.Windows.Media; 
using System.Windows.Media.Imaging; 
using System.Windows.Navigation; 
using System.Windows.Shapes; 
using System.Net; 
using System.IO; 
namespace WpfApplication1 
{ 
    /// <summary> 
    /// Interaction logic for MainWindow.xaml 
    /// </summary> 
    public partial class MainWindow : Window 
    { 
     public MainWindow() 
     { 
      InitializeComponent(); 
     } 

     private void button_Click(object sender, RoutedEventArgs e) 
     { 
    WebRequest request =WebRequest.Create("http://www.example.com");  
    WebResponse response = request.GetResponse(); 
    Stream dataStream = response.GetResponseStream(); 
    StreamReader reader = new StreamReader(dataStream); 
    string responseFromServer = reader.ReadToEnd(); 
    MessageBox.Show(responseFromServer); 
     } 
    } 
} 

Теперь, когда я нажимаю кнопку, мне понравилось запускать следующий код для чтения URL-адреса (который написан на C#)

 WebRequest request = WebRequest.Create("http://www.example.com"); 
     WebResponse response = request.GetResponse(); 
     Stream dataStream = response.GetResponseStream(); 
     StreamReader reader = new StreamReader(dataStream); 
     string responseFromServer = reader.ReadToEnd(); 
     MessageBox.Show(responseFromServer); 

Я довольно новичок в C#, и я не уверен, как объединить код с файлом XAML.

Если кто-то может показать, как его реализовать, это будет потрясающе.

спасибо.

+1

Вы просто должны быть в состоянии просто заменить 'Console.WriteLine («лет мужчина»);' с кодом, который необходимо запустить, когда кнопка нажат. Вы пробовали это или есть какая-то причина, почему это не сработает для вас? –

+0

Эй, приятель, извините, это была моя плохая часть кода, чтобы проверить, знаю ли я даже, что печатать сообщение. Я попытался вставить текст readurl, но у меня возникли проблемы с 'WebClient' даже после' using System.Net' – Ben

+0

Не нужно извиняться. Не могли бы вы отредактировать свой вопрос, чтобы включить любые ошибки компиляции, которые могут возникнуть при вставке вашего кода WebClient? –

ответ

0

Возможно, что-то не хватает, но оно, похоже, не подключено.

<Grid> 
    <Button x:Name="button" Content="Button" Margin="56.471,79.283,54.639,68.382" Click="button_Click"/> 
</Grid> 

Затем в коде позади

private void button_Click(object sender, RoutedEventArgs e) 
    { 
     using (WebClient client = new WebClient()) 
     { 
      string s = client.DownloadString(url); 
     } 
    } 
+0

Проводка, вероятно, была обработана кодом, сгенерированным VS, в методе «InitializeComponent». –

Смежные вопросы