85 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			85 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
using System;
 | 
						|
using System.Collections.Generic;
 | 
						|
using System.ComponentModel;
 | 
						|
using System.Data;
 | 
						|
using System.Drawing;
 | 
						|
using System.Text;
 | 
						|
using System.Windows.Forms;
 | 
						|
using System.Text.RegularExpressions;
 | 
						|
 | 
						|
namespace RTB_Testing
 | 
						|
{
 | 
						|
	public partial class frmRTBTesting : Form
 | 
						|
	{
 | 
						|
		public frmRTBTesting()
 | 
						|
		{
 | 
						|
			InitializeComponent();
 | 
						|
		}
 | 
						|
		private void RefreshOutput()
 | 
						|
		{
 | 
						|
			tbResults.Text = "";
 | 
						|
			try
 | 
						|
			{
 | 
						|
				MatchCollection mc = Regex.Matches(stepRTB.Rtf, tbRegex.Text);
 | 
						|
				foreach (Match m in mc)
 | 
						|
					tbResults.Text += "\r\n" + m.Value;
 | 
						|
			}
 | 
						|
			catch (Exception ex)
 | 
						|
			{
 | 
						|
				tbResults.Text = ex.Message;
 | 
						|
			}
 | 
						|
		}
 | 
						|
		private void tbRegex_TextChanged(object sender, EventArgs e)
 | 
						|
		{
 | 
						|
			RefreshOutput();
 | 
						|
		}
 | 
						|
		private bool _Changing = false;
 | 
						|
		private void stepRTB_TextChanged(object sender, EventArgs e)
 | 
						|
		{
 | 
						|
			if (_Changing) return;
 | 
						|
			_Changing = true;
 | 
						|
			tb.Text = rtb.Rtf = stepRTB.Rtf;
 | 
						|
			_Changing = false;
 | 
						|
			RefreshOutput();
 | 
						|
		}
 | 
						|
		private void rtb_TextChanged(object sender, EventArgs e)
 | 
						|
		{
 | 
						|
			if (_Changing) return;
 | 
						|
			_Changing = true;
 | 
						|
			tb.Text = stepRTB.Rtf = rtb.Rtf;
 | 
						|
			_Changing = false;
 | 
						|
			RefreshOutput();
 | 
						|
		}
 | 
						|
		private void tb_TextChanged(object sender, EventArgs e)
 | 
						|
		{
 | 
						|
			if (_Changing) return;
 | 
						|
			_Changing = true;
 | 
						|
			try
 | 
						|
			{
 | 
						|
				
 | 
						|
				rtb.Rtf = stepRTB.Rtf = tb.Text;
 | 
						|
				tbResults.Text = rtb.Rtf;
 | 
						|
				tbSelected.Text = rtb.Text;
 | 
						|
			}
 | 
						|
			catch (Exception ex)
 | 
						|
			{
 | 
						|
			}
 | 
						|
			_Changing = false;
 | 
						|
			//RefreshOutput();
 | 
						|
		}
 | 
						|
		private void stepRTB_SelectionChanged(object sender, EventArgs e)
 | 
						|
		{
 | 
						|
			if (_Changing) return;
 | 
						|
			_Changing = true;
 | 
						|
			tbSelected.Text = stepRTB.SelectedRtf;
 | 
						|
			_Changing = false;
 | 
						|
		}
 | 
						|
		private void rtb_SelectionChanged(object sender, EventArgs e)
 | 
						|
		{
 | 
						|
			if (_Changing) return;
 | 
						|
			_Changing = true;
 | 
						|
			tbSelected.Text = rtb.SelectedRtf;
 | 
						|
			_Changing = false;
 | 
						|
		}
 | 
						|
	}
 | 
						|
} |