Я написал что-то в C # WPF с SharpDX для проверки моего контроллера xbox, работает нормально, за исключением того, что когда окно теряет фокус, оно также останавливает вибрацию контроллера:
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 SharpDX.XInput;
using SharpDX;
namespace controllertest
{
class XInputController
{
public Controller controller;
public bool connected = false;
public XInputController()
{
controller = new Controller(UserIndex.One);
connected = controller.IsConnected;
}
}
public partial class MainWindow : Window
{
XInputController player1 = new XInputController();
Vibration v = new Vibration();
public MainWindow()
{
InitializeComponent();
if (player1.connected)
isConnectedtxt.Text = player1.connected.ToString();
}
private void LMotor_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
v.LeftMotorSpeed = Convert.ToUInt16(LMotor.Value * UInt16.MaxValue);
player1.controller.SetVibration(v);
}
private void RMotor_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
{
v.RightMotorSpeed = Convert.ToUInt16(RMotor.Value * UInt16.MaxValue);
player1.controller.SetVibration(v);
}
}
}
Есть ли способ привязатьКонтроллер к окну независимо от того, является ли он сфокусированным?
Я бы ДЕЙСТВИТЕЛЬНО не был бы вынужден использовать необработанный ввод для такой простой вещи ... если у кого-то есть какие-то указатели относительно того, возможно ли это или нетКак это сделать и т. д. Я был бы очень признателен. Спасибо