من می خواهم از سایت مثل خبر لند قسمت اخبار اقتصادی رو بخونه و بهم یک جا توی یک نرم افزار بهم نشون بده چگونه این کار راباید بکنم
Printable View
من می خواهم از سایت مثل خبر لند قسمت اخبار اقتصادی رو بخونه و بهم یک جا توی یک نرم افزار بهم نشون بده چگونه این کار راباید بکنم
تاحالا کار نکردم اما فک کنم باید RSS اون سایت رو بخونی و اطلاعاتو یه جا نمایش بدی. معمولا سایتهای خبری RSS دارن. دربارش تو همین سایت سرچ کن مطلب زیاده
من کد را نوشتم آیا لازم است دیتا تیبل براش ایجاد کنم یاتوی همین برنامه می شه فقط حلقه جستجو اضافه کرد.باتشکر
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.Net;
using System.Xml;
namespace rssproject
{
public partial class mainfrm : Form
{
public mainfrm()
{
InitializeComponent();
}
List<Rssitem> lstitem = new List<Rssitem>();
public void load_rss()
{
try
{
listView1.Items.Clear();
foreach (Rssitem rss in lstitem)
{
ListViewItem listview = new ListViewItem();
listview.Text = rss.Title;
listview.Tag = rss;
// listview.SubItems.Add(rss.Title);
listview.SubItems.Add(rss.Matn);
listview.SubItems.Add(rss.Link);
listView1.Items.Add(listview);
}
}
catch (Exception) { MessageBox.Show("خطا : "); }
}
private void load_data(string RssSite)
{
try
{
WebRequest request = WebRequest.Create(RssSite);
Stream stream = request.GetResponse().GetResponseStream();
XmlDocument rss = new XmlDocument();
rss.Load(stream);
XmlNodeList items = rss.SelectNodes("rss/channel/item");
foreach (XmlNode item in items)
{
Rssitem rssitem = new Rssitem();
rssitem.Title = item.SelectSingleNode("title").InnerText;
rssitem.Matn = item.SelectSingleNode("description").InnerText;
rssitem.Link = item.SelectSingleNode("link").InnerText;
lstitem.Add(rssitem);
}
}
catch { }
}
private void mainfrm_Load(object sender, EventArgs e)
{
load_data("https://www.mashreghnews.ir/rss/tp/16");
load_rss();
}
private void listView1_SelectedIndexChanged(object sender, EventArgs e)
{
try
{
Rssitem rss = new Rssitem();
if (listView1.SelectedItems.Count > 0)
{
rss = (Rssitem)listView1.SelectedItems[0].Tag;
System.Diagnostics.Process.Start(rss.Link);
}
}
catch { }
}
}
}
خب الان شما میتونی یه تکست باکس با یه باتن رو فرم بزاری بعد تو رویداد کلیک باتن یه حلقه بنویس که لیست ویو رو از اول پیمایش کنه و در صورتی که متن تکست باکس با اون ردیف از لیست ویو برابر بود با یه پیغامی اون متن پیدا شده رو نشون بده (اینم بستگی به طراحی خودتون داره)